@Override public QuadDataAccSink createInsertDataSink() { QuadDataAcc quads = new QuadDataAcc(); send(new UpdateDataInsert(quads)); return quads; }
public static UpdateDataInsert clone(UpdateDataInsert update) { UpdateDataInsert result = new UpdateDataInsert(new QuadDataAcc(update.getQuads())); return result; }
@Override public void visit(UpdateDataInsert update) { for ( Quad quad : update.getQuads() ) addToDatasetGraph(datasetGraph, quad); }
public static Iterator<Diff<Set<Quad>>> createIteratorDiff(QueryExecutionFactory qef, UpdateDataInsert update) { Diff<Set<Quad>> diff = new Diff<Set<Quad>>(Sets.newHashSet(update.getQuads()), Sets.<Quad>newHashSet(), null); Iterator<Diff<Set<Quad>>> result = Collections.singleton(diff).iterator(); return result; }
public static UpdateRequest createUpdateRequest(Iterator<? extends Quad> added, Iterator<? extends Quad> removed) { UpdateRequest result = new UpdateRequest(); if(added != null && added.hasNext()) { QuadDataAcc insertQuads = new QuadDataAcc(Lists.newArrayList(added)); UpdateData insertData = new UpdateDataInsert(insertQuads); result.add(insertData); } if(removed != null && removed.hasNext()) { QuadDataAcc deleteQuads = new QuadDataAcc(Lists.newArrayList(removed)); UpdateData deleteData = new UpdateDataDelete(deleteQuads); result.add(deleteData); } return result; }
@SuppressWarnings("unused") private void _update(UpdateDataInsert update) { insert(update.getQuads()); }
private Update buildNoWhere() { if (inserts.isEmpty()) { QuadDataAcc quadData = new QuadDataAcc(getQuads(deletes).mapWith(new Function<Quad, Quad>() { @Override public Quad apply(Quad arg0) { return check(arg0); } }).toList()); return new UpdateDataDelete(quadData); } if (deletes.isEmpty()) { QuadDataAcc quadData = new QuadDataAcc(getQuads(inserts).mapWith(new Function<Quad, Quad>() { @Override public Quad apply(Quad t) { return check(t); } }).toList()); return new UpdateDataInsert(quadData); } throw new IllegalStateException("Can not have both insert and delete without a where clause"); }
@Override public void visit(UpdateDataInsert update) { Iter.sendToSink(update.getQuads(), createInsertDataSink()); // Iter.sendToSink() will call close() on the sink }
private Update buildNoWhere() { if (inserts.isEmpty()) { QuadDataAcc quadData = new QuadDataAcc(getQuads(deletes).mapWith(new Function<Quad, Quad>() { @Override public Quad apply(Quad arg0) { return check(arg0); } }).toList()); return new UpdateDataDelete(quadData); } if (deletes.isEmpty()) { QuadDataAcc quadData = new QuadDataAcc(getQuads(inserts).mapWith(new Function<Quad, Quad>() { @Override public Quad apply(Quad t) { return check(t); } }).toList()); return new UpdateDataInsert(quadData); } throw new IllegalStateException("Can not have both insert and delete without a where clause"); }
@Test public void bNodeSPARQL_Update_1() { String str = "INSERT DATA { <x:s> <x:p> <_:789> }"; UpdateRequest req = UpdateFactory.create(str); Update update = req.getOperations().get(0); UpdateDataInsert ins = (UpdateDataInsert)update; Node obj = ins.getQuads().get(0).getObject(); assertEquals("789", obj.getBlankNodeLabel()); } }
.map(t -> new Quad(getAuditIRI(identifier), rdf.asJenaTriple(t))).forEach(sink::addQuad)); req.add(new UpdateDataInsert(sink));
.map(t -> new Quad(getAuditIRI(identifier), rdf.asJenaTriple(t))).forEach(sink::addQuad)); req.add(new UpdateDataInsert(sink));
@Test public void testInsertData1() { DatasetGraph gStore = getEmptyDatasetGraph() ; defaultGraphData(gStore, graph1) ; QuadDataAcc acc = new QuadDataAcc() ; acc.addTriple(triple2) ; UpdateDataInsert insert = new UpdateDataInsert(acc) ; UpdateProcessor uProc = UpdateExecutionFactory.create(insert, gStore) ; uProc.execute(); assertFalse(graphEmpty(gStore.getDefaultGraph())) ; assertTrue(graphContains(gStore.getDefaultGraph(), triple1)) ; assertTrue(graphContains(gStore.getDefaultGraph(), triple2)) ; }
rdf.asJenaNode(root)))); update.add(new UpdateDataInsert(sink)); rdfConnection.update(update);
rdf.asJenaNode(root)))); update.add(new UpdateDataInsert(sink)); rdfConnection.update(update);