/** Parse a string to obtain a Quad */ public static Quad parseQuad(String s) { return parseQuad(s, null) ; }
/** Parse a string to obtain a Quad */ public static Quad parseQuad(String s) { return parseQuad(s, null) ; }
/** Example setup - in-memory dataset with two graphs, one triple in each */ private static Dataset setup() { Dataset ds = TDBFactory.createDataset() ; DatasetGraphTDB dsg = (DatasetGraphTDB)(ds.asDatasetGraph()) ; Quad q1 = SSE.parseQuad("(<http://example/g1> <http://example/s> <http://example/p> <http://example/o1>)") ; Quad q2 = SSE.parseQuad("(<http://example/g2> <http://example/s> <http://example/p> <http://example/o2>)") ; dsg.add(q1) ; dsg.add(q2) ; return ds ; }
@Test(expected=ConcurrentModificationException.class) public void mrswDataset1() { DatasetGraph dsg = create().asDatasetGraph() ; Quad quad = SSE.parseQuad("(<g> <y> <p> 99)") ; Iterator<Quad> iter = dsg.find() ; dsg.add(quad) ; // Bad - after an update. iter.hasNext() ; iter.next() ; }
@Test public void mrswSPARQL1() { Dataset ds = create(); Query query = QueryFactory.create("SELECT * { ?s ?p ?o}") ; QueryExecution qExec = QueryExecutionFactory.create(query, ds) ; ResultSet rs = qExec.execSelect() ; while(rs.hasNext()) rs.next(); qExec.close() ; DatasetGraph dsg = ds.asDatasetGraph() ; Quad quad = SSE.parseQuad("(<g> <y> <p> 99)") ; dsg.add(quad) ; Iterator<Quad> iter = dsg.find() ; iter.hasNext() ; iter.next() ; }
@Test(expected=ConcurrentModificationException.class) public void mrswSPARQL2() { Dataset ds = create(); DatasetGraph dsg = ds.asDatasetGraph() ; Query query = QueryFactory.create("SELECT * { ?s ?p ?o}") ; QueryExecution qExec = QueryExecutionFactory.create(query, ds) ; ResultSet rs = qExec.execSelect() ; rs.hasNext() ; rs.next(); Quad quad = SSE.parseQuad("(<g> <y> <p> 99)") ; dsg.add(quad) ; rs.hasNext() ; // <<--- Here. rs.next(); }