Search in sources :

Example 1 with Update

use of org.apache.jena.update.Update in project jena by apache.

the class FusekiTestServer method resetServer.

/*package*/
static void resetServer() {
    if (countServer.get() == 0)
        throw new RuntimeException("No server started!");
    if (CLEAR_DSG_DIRECTLY) {
        Txn.executeWrite(dsgTesting, () -> dsgTesting.clear());
    } else {
        Update clearRequest = new UpdateDrop(Target.ALL);
        UpdateProcessor proc = UpdateExecutionFactory.createRemote(clearRequest, serviceUpdate());
        try {
            proc.execute();
        } catch (Throwable e) {
            e.printStackTrace();
            throw e;
        }
    }
}
Also used : UpdateProcessor(org.apache.jena.update.UpdateProcessor) Update(org.apache.jena.update.Update) UpdateDrop(org.apache.jena.sparql.modify.request.UpdateDrop)

Example 2 with Update

use of org.apache.jena.update.Update in project jena by apache.

the class UpdateBuilderTest method testInsertAndDeleteWithVar.

@Test
public void testInsertAndDeleteWithVar() {
    UpdateBuilder builder = new UpdateBuilder();
    Var v = Var.alloc("v");
    builder.addInsert(new Quad(g, s, v, o));
    builder.addDelete(new Triple(s, v, o));
    builder.addWhere(null, v, "foo");
    builder.setVar(v, p);
    Update update = builder.build();
    assertTrue(update instanceof UpdateModify);
    UpdateModify um = (UpdateModify) update;
    List<Quad> quads = um.getInsertQuads();
    assertEquals(1, quads.size());
    Quad q = quads.get(0);
    assertEquals(g, q.getGraph());
    assertEquals(s, q.getSubject());
    assertEquals(p, q.getPredicate());
    assertEquals(o, q.getObject());
    quads = um.getDeleteQuads();
    assertEquals(1, quads.size());
    q = quads.get(0);
    assertEquals(Quad.defaultGraphNodeGenerated, q.getGraph());
    assertEquals(s, q.getSubject());
    assertEquals(p, q.getPredicate());
    assertEquals(o, q.getObject());
    Element e = um.getWherePattern();
    assertTrue(e instanceof ElementGroup);
    ElementGroup eg = (ElementGroup) e;
    assertEquals(1, eg.getElements().size());
    ElementPathBlock epb = (ElementPathBlock) eg.getElements().get(0);
    Triple t = epb.getPattern().get(0).asTriple();
    assertEquals(Node.ANY, t.getSubject());
    assertEquals(p, t.getPredicate());
    assertEquals(builder.makeNode("foo"), t.getObject());
}
Also used : Triple(org.apache.jena.graph.Triple) Quad(org.apache.jena.sparql.core.Quad) UpdateModify(org.apache.jena.sparql.modify.request.UpdateModify) Var(org.apache.jena.sparql.core.Var) Element(org.apache.jena.sparql.syntax.Element) UpdateBuilder(org.apache.jena.arq.querybuilder.UpdateBuilder) Update(org.apache.jena.update.Update) ElementGroup(org.apache.jena.sparql.syntax.ElementGroup) ElementPathBlock(org.apache.jena.sparql.syntax.ElementPathBlock) Test(org.junit.Test)

Example 3 with Update

use of org.apache.jena.update.Update in project jena by apache.

the class UpdateTransformOps method transform.

public static Update transform(Update update, ElementTransform transform, ExprTransform exprTransform) {
    UpdateTransform upParam = new UpdateTransform(transform, exprTransform);
    update.visit(upParam);
    Update update1 = upParam.result;
    return update1;
}
Also used : Update(org.apache.jena.update.Update)

Example 4 with Update

use of org.apache.jena.update.Update in project jena by apache.

the class UpdateCompare method isomorphic.

public static boolean isomorphic(UpdateRequest req1, UpdateRequest req2) {
    if (req1 == req2)
        return true;
    if (!req1.samePrologue(req2))
        return false;
    List<Update> updates1 = req1.getOperations();
    List<Update> updates2 = req2.getOperations();
    if (updates1.size() != updates2.size())
        return false;
    NodeIsomorphismMap isomap = new NodeIsomorphismMap();
    for (int i = 0; i < updates1.size(); i++) {
        Update upd1 = updates1.get(i);
        Update upd2 = updates2.get(i);
        if (!isomorphic(upd1, upd2, isomap))
            return false;
    }
    return true;
}
Also used : NodeIsomorphismMap(org.apache.jena.sparql.util.NodeIsomorphismMap) Update(org.apache.jena.update.Update)

Example 5 with Update

use of org.apache.jena.update.Update in project jena by apache.

the class AbstractTestUpdateGraphMgt method testCreateDrop2.

@Test
public void testCreateDrop2() {
    DatasetGraph gStore = getEmptyDatasetGraph();
    Update u = new UpdateCreate(graphIRI);
    UpdateAction.execute(u, gStore);
    u = new UpdateCreate(graphIRI, true);
    UpdateAction.execute(u, gStore);
    // JENA-1068
    // assertTrue(gStore.containsGraph(graphIRI)) ;
    assertTrue(graphEmpty(gStore.getGraph(graphIRI)));
    u = new UpdateDrop(graphIRI);
    UpdateAction.execute(u, gStore);
    assertFalse(gStore.containsGraph(graphIRI));
    u = new UpdateDrop(graphIRI, true);
    UpdateAction.execute(u, gStore);
}
Also used : UpdateCreate(org.apache.jena.sparql.modify.request.UpdateCreate) Update(org.apache.jena.update.Update) DatasetGraph(org.apache.jena.sparql.core.DatasetGraph) UpdateDrop(org.apache.jena.sparql.modify.request.UpdateDrop) Test(org.junit.Test)

Aggregations

Update (org.apache.jena.update.Update)30 Test (org.junit.Test)23 Quad (org.apache.jena.sparql.core.Quad)19 Triple (org.apache.jena.graph.Triple)9 UpdateDataInsert (org.apache.jena.sparql.modify.request.UpdateDataInsert)9 UpdateDataDelete (org.apache.jena.sparql.modify.request.UpdateDataDelete)7 UpdateDrop (org.apache.jena.sparql.modify.request.UpdateDrop)6 UpdateModify (org.apache.jena.sparql.modify.request.UpdateModify)5 Element (org.apache.jena.sparql.syntax.Element)5 ElementGroup (org.apache.jena.sparql.syntax.ElementGroup)5 ElementPathBlock (org.apache.jena.sparql.syntax.ElementPathBlock)5 Node (org.apache.jena.graph.Node)4 Var (org.apache.jena.sparql.core.Var)4 UpdateProcessor (org.apache.jena.update.UpdateProcessor)3 UpdateRequest (org.apache.jena.update.UpdateRequest)3 ArrayList (java.util.ArrayList)2 DatasetGraph (org.apache.jena.sparql.core.DatasetGraph)2 UpdateCreate (org.apache.jena.sparql.modify.request.UpdateCreate)2 UpdateBuilder (org.apache.jena.arq.querybuilder.UpdateBuilder)1 NodeIsomorphismMap (org.apache.jena.sparql.util.NodeIsomorphismMap)1