/** Return the DatasetGraph being wrapped. */ public final DatasetGraph getWrapped() { return get(); }
/** * A {@link DatasetGraph} may contain other <strong>wrapped DatasetGraph's</strong>. This method will return * the first instance (including the argument to this method) that <strong>is not</strong> an instance of * {@link DatasetGraphWrapper}. * * @param dsg a {@link DatasetGraph} * @return the first found {@link DatasetGraph} that is not an instance of {@link DatasetGraphWrapper} */ // Unused currently. private static DatasetGraph x_unwrap(DatasetGraph dsg) { if ( dsg instanceof DatasetGraphWrapper) dsg = ((DatasetGraphWrapper)dsg).getBase() ; return dsg ; }
@Override public Context getContext() { return getCxt(); }
private void add$(Node g, Node s, Node p, Node o) { super.add(g,s,p,o) ; record(QuadAction.ADD,g,s,p,o) ; }
@Override public String toString() { DatasetGraph dsg = getR(); return Txn.calculateRead(dsg, ()->dsg.toString() ); }
private void delete$(Node g, Node s, Node p, Node o) { super.delete(g,s,p,o) ; record(QuadAction.DELETE,g,s,p,o) ; }
@Override public void begin(ReadWrite readWrite) { getT().begin(readWrite); }
@Override public void sync() { // Pass down sync. SystemARQ.sync(getW()); }
/** Recursively unwrap a {@link DatasetGraphWrapper}. * * @return the first found {@link DatasetGraph} that is not an instance of {@link DatasetGraphWrapper} */ public final DatasetGraph getBase() { DatasetGraph dsgw = dsg; while (dsgw instanceof DatasetGraphWrapper) { dsgw = ((DatasetGraphWrapper)dsg).getWrapped(); } return dsgw; }
@Override public Graph getUnionGraph() { return getG().getUnionGraph(); }
@Override public void add(Quad quad) { counterIns.incrementAndGet() ; super.add(quad) ; }
@Override public Iterator<Node> listGraphNodes() { return getR().listGraphNodes(); }
@Override public void delete(Quad quad) { counterDel.incrementAndGet() ; super.delete(quad) ; } } ;
@Override public boolean promote() { return getT().promote(); }
@Override public void removeGraph(Node graphName) { getW().removeGraph(graphName); }
/** Recursively unwrap a {@link DatasetGraphWrapper}, stopping at a {@link DatasetGraphWrapper} * that indicate it is "view changing", ie shows quads to the base dataset graph. * * @return the first found {@link DatasetGraph} that is not an instance of {@link DatasetGraphWrapper} */ public final DatasetGraph getBaseForQuery() { DatasetGraph dsgw = dsg; while (dsgw instanceof DatasetGraphWrapper) { if ( dsgw instanceof DatasetGraphWrapperView ) break; dsgw = ((DatasetGraphWrapper)dsg).getWrapped(); } return dsgw; }
@Override public Graph getGraph(Node graphNode) { return getG().getGraph(graphNode); }
private void add$(Quad quad) { super.add(quad) ; record(QuadAction.ADD, quad.getGraph(), quad.getSubject(), quad.getPredicate(), quad.getObject()) ; }
@Override public Iterator<Quad> find() { return getR().find(); }
private void delete$(Quad quad) { super.delete(quad) ; record(QuadAction.DELETE, quad.getGraph(), quad.getSubject(), quad.getPredicate(), quad.getObject()) ; }