本文整理了Java中org.apache.commons.rdf.api.Dataset.contains()
方法的一些代码示例,展示了Dataset.contains()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Dataset.contains()
方法的具体详情如下:
包路径:org.apache.commons.rdf.api.Dataset
类名称:Dataset
方法名:contains
暂无
代码示例来源:origin: org.apache.commons/commons-rdf-simple
@Override
public boolean contains(final BlankNodeOrIRI subject, final IRI predicate, final RDFTerm object) {
return dataset.contains(unionOrNamedGraph(), subject, predicate, object);
}
代码示例来源:origin: org.trellisldp/trellis-rosid-common
/**
* Stream out the removed quads
* @return the removed quads
*/
public Stream<Quad> getRemoved() {
return existing.stream().filter(q -> !dataset.contains(q))
// exclude the server-managed modified triple
.filter(q -> !q.getGraphName().equals(of(PreferServerManaged)) || !modified.equals(q.getPredicate()))
.map(q -> (Quad) q);
}
代码示例来源:origin: org.trellisldp/trellis-rosid-common
private Consumer<Resource> emitToParent(final IRI identifier, final Dataset dataset,
final List<Future<RecordMetadata>> results) {
final Boolean isCreate = dataset.contains(of(PreferAudit), null, type, Create);
final Boolean isDelete = dataset.contains(of(PreferAudit), null, type, Delete);
final String containmentTopic = isDelete ? TOPIC_LDP_CONTAINMENT_DELETE : TOPIC_LDP_CONTAINMENT_ADD;
final String membershipTopic = isDelete ? TOPIC_LDP_MEMBERSHIP_DELETE : TOPIC_LDP_MEMBERSHIP_ADD;
return container -> {
if (isDelete || isCreate) {
try {
LOGGER.info("Sending to parent: {}", container.getIdentifier());
results.add(producer.send(buildContainmentMessage(containmentTopic, identifier, container,
dataset)));
buildMembershipMessage(membershipTopic, identifier, container, dataset).ifPresent(msg -> {
LOGGER.info("Sending to member resource: {}", container.getMembershipResource());
results.add(producer.send(msg));
});
} catch (final Exception ex) {
LOGGER.error("Error processing dataset: {}", ex.getMessage());
}
}
};
}
代码示例来源:origin: org.apache.commons/commons-rdf-simple
@Override
public boolean contains(final Triple triple) {
return dataset.contains(unionOrNamedGraph(), triple.getSubject(), triple.getPredicate(), triple.getObject());
}
代码示例来源:origin: trellis-ldp/trellis
private Stream<Executable> checkEventProperties(final Dataset dataset) {
return Stream.of(
() -> assertTrue(dataset.contains(null, null, type, PROV.Activity), "missing prov:Activity triple!"),
() -> assertTrue(dataset.contains(null, subject, PROV.wasGeneratedBy, null),
"missing prov:wasGeneratedBy triple!"),
() -> assertTrue(dataset.contains(null, null, PROV.wasAssociatedWith, Trellis.AnonymousAgent),
"missing prov:wasAssociatedWith triple!"),
() -> assertTrue(dataset.contains(null, null, PROV.actedOnBehalfOf, Trellis.AdministratorAgent),
"missing prov:actedOnBehalfOf triple!"),
() -> assertTrue(dataset.contains(null, null, PROV.atTime,
rdf.createLiteral(created.toString(), XSD.dateTime)), "missing prov:atTime triple!"),
() -> assertEquals(6L, dataset.size(), "Incorrect dataset size!"));
}
}
代码示例来源:origin: org.apache.commons/commons-rdf-api
@Test
public void contains() throws Exception {
assertFalse(dataset.contains(null, bob, knows, alice)); // or so he claims..
assertTrue(dataset.contains(Optional.of(graph1), alice, knows, bob));
try (Stream<? extends Quad> stream = dataset.stream()) {
final Optional<? extends Quad> first = stream.skip(4).findFirst();
Assume.assumeTrue(first.isPresent());
final Quad existingQuad = first.get();
assertTrue(dataset.contains(existingQuad));
}
final Quad nonExistingQuad = factory.createQuad(graph2, bob, knows, alice);
assertFalse(dataset.contains(nonExistingQuad));
// An existing quad
final Quad quad = factory.createQuad(graph1, alice, knows, bob);
// FIXME: Should not this always be true?
assertTrue(dataset.contains(quad));
}
代码示例来源:origin: org.apache.commons/commons-rdf-api
/**
* Ensure {@link Dataset#getGraphNames()} contains our two graphs.
*
* @throws Exception
* If test fails
*/
@Test
public void getGraphNames() throws Exception {
final Set<BlankNodeOrIRI> names = dataset.getGraphNames().collect(Collectors.toSet());
assertTrue("Can't find graph name " + graph1, names.contains(graph1));
assertTrue("Found no quads in graph1", dataset.contains(Optional.of(graph1), null, null, null));
final Optional<BlankNodeOrIRI> graphName2 = dataset.getGraphNames().filter(BlankNode.class::isInstance).findAny();
assertTrue("Could not find graph2-like BlankNode", graphName2.isPresent());
assertTrue("Found no quads in graph2", dataset.contains(graphName2, null, null, null));
// Some implementations like Virtuoso might have additional internal graphs,
// so we can't assume this:
//assertEquals(2, names.size());
}
代码示例来源:origin: org.trellisldp/trellis-test
/**
* Test creating a resource.
* @throws Exception if the operation failed
*/
@Test
@DisplayName("Test creating resource")
default void testCreateResource() throws Exception {
final RDF rdf = getInstance();
final IRI identifier = rdf.createIRI(TRELLIS_DATA_PREFIX + getResourceService().generateIdentifier());
final Dataset dataset = buildDataset(identifier, "Creation Test", SUBJECT1);
assertEquals(MISSING_RESOURCE, getResourceService().get(identifier).toCompletableFuture().join(),
"Check for no pre-existing LDP-RS");
assertDoesNotThrow(() -> getResourceService().create(Metadata.builder(identifier)
.interactionModel(LDP.RDFSource).container(ROOT_CONTAINER).build(), dataset)
.toCompletableFuture().join(), "Check that the resource was successfully created");
final Resource res = getResourceService().get(identifier).toCompletableFuture().join();
assertAll("Check resource stream", res.stream(Trellis.PreferUserManaged).map(toQuad(Trellis.PreferUserManaged))
.map(q -> () -> assertTrue(dataset.contains(q), "Verify that the quad is from the dataset: " + q)));
}
代码示例来源:origin: trellis-ldp/trellis
/**
* Test creating a resource.
* @throws Exception if the operation failed
*/
@Test
@DisplayName("Test creating resource")
default void testCreateResource() throws Exception {
final RDF rdf = getInstance();
final IRI identifier = rdf.createIRI(TRELLIS_DATA_PREFIX + getResourceService().generateIdentifier());
final Dataset dataset = buildDataset(identifier, "Creation Test", SUBJECT1);
assertEquals(MISSING_RESOURCE, getResourceService().get(identifier).toCompletableFuture().join(),
"Check for no pre-existing LDP-RS");
assertDoesNotThrow(() -> getResourceService().create(Metadata.builder(identifier)
.interactionModel(LDP.RDFSource).container(ROOT_CONTAINER).build(), dataset)
.toCompletableFuture().join(), "Check that the resource was successfully created");
final Resource res = getResourceService().get(identifier).toCompletableFuture().join();
assertAll("Check resource stream", res.stream(Trellis.PreferUserManaged).map(toQuad(Trellis.PreferUserManaged))
.map(q -> () -> assertTrue(dataset.contains(q), "Verify that the quad is from the dataset: " + q)));
}
代码示例来源:origin: org.apache.commons/commons-rdf-api
@Test
public void containsSPO() throws Exception {
assertTrue(dataset.contains(null, null, null, null));
assertTrue(dataset.contains(null, new DummyIRI(1), new DummyIRI(2), new DummyIRI(3)));
assertFalse(dataset.contains(null, new DummyIRI(0), new DummyIRI(0), new DummyIRI(0)));
}
代码示例来源:origin: org.apache.commons/commons-rdf-api
@Test
public void contains() throws Exception {
assertTrue(dataset.contains(new DummyQuad()));
}
代码示例来源:origin: org.apache.commons/commons-rdf-api
@Test
public void containsLanguageTagsCaseInsensitive() {
// COMMONSRDF-51: Ensure we can add/contains/remove with any casing
// of literal language tag
final Literal lower = factory.createLiteral("Hello there", "en-gb");
final Literal upper = factory.createLiteral("Hello there", "EN-GB");
final Literal mixed = factory.createLiteral("Hello there", "en-GB");
final IRI example1 = factory.createIRI("http://example.com/s1");
final IRI greeting = factory.createIRI("http://example.com/greeting");
dataset.add(null, example1, greeting, upper);
// any kind of Triple should match
assertTrue(dataset.contains(factory.createQuad(null, example1, greeting, upper)));
assertTrue(dataset.contains(factory.createQuad(null, example1, greeting, lower)));
assertTrue(dataset.contains(factory.createQuad(null, example1, greeting, mixed)));
// or as patterns
assertTrue(dataset.contains(null, null, null, upper));
assertTrue(dataset.contains(null, null, null, lower));
assertTrue(dataset.contains(null, null, null, mixed));
}
代码示例来源:origin: org.apache.commons/commons-rdf-api
@Test
public void clear() throws Exception {
dataset.clear();
assertFalse(dataset.contains(null, alice, knows, bob));
assertEquals(0, dataset.size());
dataset.clear(); // no-op
assertEquals(0, dataset.size());
assertFalse(dataset.contains(null, null, null, null)); // nothing here
}
代码示例来源:origin: org.apache.commons/commons-rdf-api
@Test
public void getQuads() throws Exception {
long quadCount;
try (Stream<? extends Quad> stream = dataset.stream()) {
quadCount = stream.count();
}
assertTrue(quadCount > 0);
try (Stream<? extends Quad> stream = dataset.stream()) {
assertTrue(stream.allMatch(t -> dataset.contains(t)));
}
// Check exact count
Assume.assumeNotNull(bnode1, bnode2, aliceName, bobName, secretClubName, companyName, bobNameQuad);
assertEquals(10, quadCount);
}
代码示例来源:origin: trellis-ldp/trellis
@Test
public void testAuditDeletion() {
final Dataset dataset = rdf.createDataset();
final AuditService svc = new DefaultAuditService() {};
svc.deletion(subject, mockSession).forEach(dataset::add);
assertTrue(dataset.getGraph(Trellis.PreferAudit).filter(graph -> graph.size() == dataset.size()).isPresent(),
"Graph and dataset sizes don't match for deletion event!");
assertTrue(dataset.contains(null, null, type, AS.Delete), "as:Delete type not in delete dataset!");
assertAll("Event property check", checkEventProperties(dataset));
}
代码示例来源:origin: trellis-ldp/trellis
@Test
public void testAuditUpdate() {
final Dataset dataset = rdf.createDataset();
final AuditService svc = new DefaultAuditService() {};
svc.update(subject, mockSession).forEach(dataset::add);
assertTrue(dataset.getGraph(Trellis.PreferAudit).filter(graph -> graph.size() == dataset.size()).isPresent());
assertTrue(dataset.contains(null, null, type, AS.Update));
assertAll("Event property check", checkEventProperties(dataset));
}
代码示例来源:origin: trellis-ldp/trellis
@Test
public void testAuditCreation() {
final Dataset dataset = rdf.createDataset();
final AuditService svc = new DefaultAuditService() {};
svc.creation(subject, mockSession).forEach(dataset::add);
assertTrue(dataset.getGraph(Trellis.PreferAudit).filter(graph -> graph.size() == dataset.size()).isPresent(),
"Graph and dataset sizes don't match for creation event!");
assertTrue(dataset.contains(null, null, type, AS.Create), "as:Create type not in create dataset!");
assertAll("Event property check", checkEventProperties(dataset));
}
代码示例来源:origin: trellis-ldp/trellis
@Test
public void testAppendSemantics() {
final Quad testFirstQuad = createQuad(testResourceId3, testResourceId2, testResourceId1, badId);
final Quad testSecondQuad = createQuad(testResourceId3, testResourceId2, testResourceId1, badId);
// store some data in mutable and immutable sides under the same resource ID
final Resource testFirstResource = new TestResource(testResourceId3, testFirstQuad);
assertNull(testable.add(testResourceId3, testFirstResource.dataset()).toCompletableFuture().join(),
"Couldn't create an immutable resource!");
final Resource testSecondResource = new TestResource(testResourceId3, testSecondQuad);
assertNull(testable.add(testResourceId3, testSecondResource.dataset()).toCompletableFuture().join(),
"Couldn't add to an immutable resource!");
final Resource retrieved = testable.get(testResourceId3).toCompletableFuture().join();
assertEquals(testResourceId3, retrieved.getIdentifier(), "Resource was retrieved with wrong ID!");
final Dataset quads = retrieved.dataset();
assertTrue(quads.contains(testFirstQuad), "Resource was retrieved without its immutable data!");
assertTrue(quads.contains(testSecondQuad), "Resource was retrieved without its mutable data!");
quads.remove(testFirstQuad);
quads.remove(testSecondQuad);
assertEquals(0, quads.size(), "Resource was retrieved with too much data!");
}
代码示例来源:origin: trellis-ldp/trellis
@Test
public void testMergingBehavior() {
final Quad testMutableQuad = createQuad(testResourceId2, testResourceId2, testResourceId1, badId);
final Quad testImmutableQuad = createQuad(testResourceId2, testResourceId2, testResourceId1, badId);
// store some data in mutable and immutable sides under the same resource ID
final Resource testMutableResource = new TestResource(testResourceId2, testMutableQuad);
assertNull(testable.create(Metadata.builder(testMutableResource).build(), testMutableResource.dataset())
.toCompletableFuture().join(), "Couldn't create a resource!");
final Resource testImmutableResource = new TestResource(testResourceId2, testImmutableQuad);
assertNull(testable.add(testResourceId2, testImmutableResource.dataset()).toCompletableFuture().join(),
"Couldn't create an immutable resource!");
final Resource retrieved = testable.get(testResourceId2).toCompletableFuture().join();
assertEquals(testMutableResource.getIdentifier(), retrieved.getIdentifier(),
"Resource was retrieved with wrong ID!");
final Dataset quads = retrieved.dataset();
assertTrue(quads.contains(testImmutableQuad), "Resource was retrieved without its immutable data!");
assertTrue(quads.contains(testMutableQuad), "Resource was retrieved without its mutable data!");
quads.remove(testImmutableQuad);
quads.remove(testMutableQuad);
assertEquals(0, quads.size(), "Resource was retrieved with too much data!");
}
代码示例来源:origin: org.apache.commons/commons-rdf-api
@Test
public void removeLanguageTagsCaseInsensitive() {
// COMMONSRDF-51: Ensure we can remove with any casing
// of literal language tag
final Literal lower = factory.createLiteral("Howdy", "en-us");
final Literal upper = factory.createLiteral("Howdy", "EN-US");
final Literal mixed = factory.createLiteral("Howdy", "en-US");
final IRI example1 = factory.createIRI("http://example.com/s1");
final IRI greeting = factory.createIRI("http://example.com/greeting");
dataset.add(null, example1, greeting, upper);
// Remove should also honour any case
dataset.remove(null, example1, null, mixed);
assertFalse(dataset.contains(null, null, greeting, null));
dataset.add(null, example1, greeting, lower);
dataset.remove(null, example1, null, upper);
// Check with Triple
dataset.add(factory.createQuad(null, example1, greeting, mixed));
dataset.remove(factory.createQuad(null, example1, greeting, upper));
assertFalse(dataset.contains(null, null, greeting, null));
}
内容来源于网络,如有侵权,请联系作者删除!