private static Quad getOne(DatasetGraph dsg, Node g, Node s, Node p, Node o) { Iterator<Quad> iter = dsg.findNG(g, s, p, o) ; if ( ! iter.hasNext() ) return null ; Quad q = iter.next() ; if ( iter.hasNext() ) return null ; return q ; }
private static Quad getOne(DatasetGraph dsg, Node g, Node s, Node p, Node o) { Iterator<Quad> iter = dsg.findNG(g, s, p, o) ; if ( ! iter.hasNext() ) return null ; Quad q = iter.next() ; if ( iter.hasNext() ) return null ; return q ; }
@Override public Iterator<Quad> findNG(Node g, Node s, Node p, Node o) { Predicate<Quad> pred = new PredicateIfQuadExists(removed); Iterator<Quad> itAdded = added.findNG(g, s, p, o); Iterator<Quad> result = core.findNG(g, s, p, o); result = Iterators.filter(result, pred); result = Iterators.concat(result, itAdded); return result; }
@Override public Iterator<Quad> findNG(Node g, Node s, Node p, Node o) { return fromEach(dsg -> dsg.findNG(g, s, p, o)); }
@Override public Iterator<Quad> findNG(Node g, Node s, Node p, Node o) { return getR().findNG(g, s, p, o); }
/** Send a dataset to a StreamRDF as triples and quads, using the explicitly given prefix map */ public static void sendDatasetToStream(DatasetGraph datasetGraph, StreamRDF stream, PrefixMap prefixMap) { if ( prefixMap != null ) sendPrefixesToStream(prefixMap, stream) ; // Default graph Iterator<Triple> iter1 = datasetGraph.getDefaultGraph().find(null, null, null) ; StreamOps.sendTriplesToStream(iter1, stream) ; Iterator<Quad> iter2 = datasetGraph.findNG(null, null, null, null) ; StreamOps.sendQuadsToStream(iter2, stream) ; }
private static ExtendedIterator<Triple> quadsToTriples(DatasetGraph dsg, Node graphName, Triple m) { Iterator<Quad> qIter = dsg.findNG(graphName, m.getSubject(), m.getPredicate(), m.getObject()); Iterator<Triple> tIter = Iter.map(qIter, quad->quad.asTriple()); return WrappedIterator.createNoRemove(tIter) ; }
@Test public void find_ng_01() { List<Quad> x = toList(dsg.findNG(null, null, null, null)) ; assertEquals(8, x.size()) ; assertTrue(x.contains(q4)) ; assertTrue(x.contains(q10)) ; assertFalse(x.contains(q1)) ; }
@Test public void find_ng_02() { List<Quad> x = toList(dsg.findNG(null, s, p, o)) ; assertEquals(3, x.size()) ; assertFalse(x.contains(q4)) ; assertFalse(x.contains(q1)) ; assertTrue(x.contains(q3)) ; assertTrue(x.contains(q5)) ; assertTrue(x.contains(q8)) ; }