@Deprecated @Override public BulkUpdateHandler getBulkUpdateHandler() { return graph.getBulkUpdateHandler() ; }
@Override @Deprecated public BulkUpdateHandler getBulkUpdateHandler() { if (bud == null) bud = new WrappedBulkUpdateHandler( this, base.getBulkUpdateHandler() ); return bud; }
@Override @Deprecated public BulkUpdateHandler getBulkUpdateHandler() { if (bulkHandler == null) bulkHandler = new WrappedBulkUpdateHandler( this, getRequiredBaseGraph().getBulkUpdateHandler() ); return bulkHandler; }
protected void execDropClear(UpdateDropClear update, Node g, boolean isClear) { if ( ! alwaysSilent ) { if ( g != null && ! graphStore.containsGraph(g) && ! update.isSilent()) error("No such graph: "+g) ; } if ( isClear ) graph(graphStore, g).getBulkUpdateHandler().removeAll() ; else graphStore.removeGraph(g) ; }
@Override public void addGraph(Node graphName, Graph graph) { removeGraph(graphName) ; getGraph(graphName).getBulkUpdateHandler().add(graph) ; }
protected void execDelete(List<Quad> quads, Node dftGraph, List<Binding> bindings) { MultiMap<Node, Triple> acc = template(quads, dftGraph, bindings) ; if ( acc == null ) return ; for ( Node gn : acc.keys() ) { Collection<Triple> triples = acc.get(gn) ; graph(graphStore, gn).getBulkUpdateHandler().delete(triples.iterator()) ; } }
protected void execInsert(List<Quad> quads, Node dftGraph, List<Binding> bindings) { MultiMap<Node, Triple> acc = template(quads, dftGraph, bindings) ; if ( acc == null ) return ; for ( Node gn : acc.keys() ) { Collection<Triple> triples = acc.get(gn) ; graph(graphStore, gn).getBulkUpdateHandler().add(triples.iterator()) ; } }
protected static void gsDrop(GraphStore gStore, Target target, boolean isSilent) { if ( target.isDefault() ) gStore.getDefaultGraph().getBulkUpdateHandler().removeAll() ; else gStore.removeGraph(target.getGraph()) ; }
protected static void gsCopyTriples(GraphStore gStore, Target src, Target dest) { Graph gSrc = graph(gStore, src) ; Graph gDest = graph(gStore, dest) ; // Ugly! but avoids concurrency problems. // TODO Revisit graph->graph triple copy. List<Triple> list = Iter.toList(gSrc.find(null, null, null)) ; gDest.getBulkUpdateHandler().add(list) ; }
@Before public void before() { graph.getBulkUpdateHandler().removeAll() ; }
protected static void gsClear(GraphStore gStore, Target target, boolean isSilent) { // No create. Graph g = graph(gStore, target) ; if ( target.isOneNamedGraph() ) { if ( !gStore.containsGraph(target.getGraph()) ) { if ( ! isSilent ) error("No such graph: "+g) ; return ; } } g.getBulkUpdateHandler().removeAll() ; }
model.getGraph().getBulkUpdateHandler().add( triples );
g.getBulkUpdateHandler().add(g2) ;
@Test public void update2() { Graph g = create() ; g.getBulkUpdateHandler().add(new Triple[]{t1}) ; assertTrue(g.contains(t1)) ; g.getBulkUpdateHandler().removeAll() ; assertFalse(g.contains(t1)) ; }
@Test public void update1() { Graph g = create() ; g.getBulkUpdateHandler().add(new Triple[]{t1}) ; assertTrue(g.contains(t1)) ; g.getBulkUpdateHandler().delete(new Triple[]{t1}) ; assertFalse(g.contains(t1)) ; }
model.getGraph().getBulkUpdateHandler().add( triples );
private static Dataset create() { Graph g = buildGraph() ; Dataset ds = TDBFactory.createDataset() ; ds.getDefaultModel().getGraph().getBulkUpdateHandler().add(g) ; return ds ; }
@Test public void dataset3() { Dataset ds = graphLocation.getDataset() ; Graph g1 = ds.getDefaultModel().getGraph() ; // Sometimes, under windows, deleting the files by // graphLocation.clearDirectory does not work. // Needed for safe tests on windows. g1.getBulkUpdateHandler().removeAll() ; Graph g2 = ds.getNamedModel("http://example/").getGraph() ; g2.add(new Triple(n0,n1,n2) ) ; assertTrue(g2.contains(n0,n1,n2) ) ; assertFalse(g1.contains(n0,n1,n2) ) ; }
@Test public void mrswGraph5() { Dataset d = TDBFactory.createDataset() ; Model m = d.getNamedModel("http://example") ; m.getGraph().getBulkUpdateHandler().add(buildGraph()) ; Resource r = m.createResource("x") ; ExtendedIterator<Statement> iter1 = m.listStatements(r, null, (RDFNode)null) ; while(iter1.hasNext()) iter1.next(); Triple t = SSE.parseTriple("(<y> <p> 99)") ; m.getGraph().delete(t) ; iter1.hasNext() ; }
@Test(expected=ConcurrentModificationException.class) public void mrswGraph6() { Dataset d = TDBFactory.createDataset() ; Model m = d.getNamedModel("http://example") ; m.getGraph().getBulkUpdateHandler().add(buildGraph()) ; Resource r = m.createResource("x") ; ExtendedIterator<Statement> iter1 = m.listStatements(r, null, (RDFNode)null) ; assertNotNull(iter1.next()) ; Triple t = SSE.parseTriple("(<y> <p> 99)") ; m.getGraph().delete(t) ; iter1.next() ; }