public StoreParams getStoreParams() { checkNotClosed(); return storage.storeParams; }
@Override public final void removeGraph(Node graphName) { checkNotClosed() ; deleteAny(graphName, Node.ANY, Node.ANY, Node.ANY) ; }
public GraphTDB getGraphTDB(Node graphNode) { checkNotClosed(); return (GraphTDB)getGraph(graphNode); }
public GraphTDB getDefaultGraphTDB() { checkNotClosed(); return (GraphTDB)getDefaultGraph(); }
@Override public Graph getDefaultGraph() { checkNotClosed() ; return new GraphTDB(this, null) ; }
@Override public Graph getGraph(Node graphNode) { checkNotClosed(); return new GraphTDB(this, graphNode); }
@Override public void sync() { if ( exceptionOnSync ) throw new JenaTransactionException("sync called"); checkNotClosed(); syncStorage(); }
@Override public long size() { checkNotClosed(); return Iter.count(listGraphNodes()); }
@Override protected Iterator<Quad> findInAnyNamedGraphs(Node s, Node p, Node o) { checkNotClosed(); return isolate(getQuadTable().find(Node.ANY, s, p, o)); }
@Override // Empty graphs don't "exist" public boolean containsGraph(Node graphNode) { checkNotClosed() ; if ( Quad.isDefaultGraphExplicit(graphNode) || Quad.isUnionGraph(graphNode) ) return true ; return _containsGraph(graphNode) ; }
@Override public void addGraph(Node graphName, Graph graph) { checkNotClosed() ; removeGraph(graphName) ; GraphUtil.addInto(getGraph(graphName), graph) ; }
@Override protected Iterator<Quad> findInSpecificNamedGraph(Node g, Node s, Node p, Node o) { checkNotClosed(); return isolate(getQuadTable().find(g, s, p, o)); }
@Override protected void addToDftGraph(Node s, Node p, Node o) { checkNotClosed() ; requireWriteTxn() ; notifyAdd(null, s, p, o) ; getTripleTable().add(s,p,o) ; }
@Override protected Iterator<Quad> findInDftGraph(Node s, Node p, Node o) { checkNotClosed() ; return isolate(triples2quadsDftGraph(getTripleTable().find(s, p, o))) ; }
@Override protected void addToNamedGraph(Node g, Node s, Node p, Node o) { checkNotClosed() ; requireWriteTxn() ; notifyAdd(g, s, p, o) ; getQuadTable().add(g, s, p, o) ; }
@Override protected void deleteFromDftGraph(Node s, Node p, Node o) { checkNotClosed() ; requireWriteTxn() ; notifyDelete(null, s, p, o) ; getTripleTable().delete(s, p, o) ; }
@Override public boolean isEmpty() { checkNotClosed(); return getTripleTable().isEmpty() && getQuadTable().isEmpty(); }
@Override public void clear() { checkNotClosed() ; // Leave the node table alone. getTripleTable().clearTriples() ; getQuadTable().clearQuads() ; }
public NodeTupleTable chooseNodeTupleTable(Node graphNode) { checkNotClosed() ; if ( graphNode == null || Quad.isDefaultGraph(graphNode) ) return getTripleTable().getNodeTupleTable() ; else // Includes Node.ANY and union graph return getQuadTable().getNodeTupleTable() ; }
@Override public Iterator<Node> listGraphNodes() { checkNotClosed(); Iterator<Tuple<NodeId>> x = storage.quadTable.getNodeTupleTable().findAll(); Iterator<NodeId> z = Iter.iter(x).map(t -> t.get(0)).distinct(); return NodeLib.nodes(storage.quadTable.getNodeTupleTable().getNodeTable(), z); }