Package org.aksw.conjure.datasource
Class DatasetGraphRailed
java.lang.Object
org.apache.jena.sparql.core.DatasetGraphBase
org.apache.jena.sparql.core.DatasetGraphQuads
org.aksw.conjure.datasource.DatasetGraphRailed
- All Implemented Interfaces:
org.aksw.jenax.dataaccess.sparql.common.TransactionalWrapper,org.apache.jena.atlas.lib.Closeable,org.apache.jena.sparql.core.DatasetGraph,org.apache.jena.sparql.core.Transactional
public class DatasetGraphRailed
extends org.apache.jena.sparql.core.DatasetGraphQuads
implements org.aksw.jenax.dataaccess.sparql.common.TransactionalWrapper
A dataset graph whose 'add' method creates new dataset graph instance
once the current graph's size exceeds a threshold.
Deletion and lookup of quads and quad patterns have to be delegated to all graphs part of the rail.
- Author:
- raven
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.jena.sparql.core.Transactional
org.apache.jena.sparql.core.Transactional.Promote -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected List<org.apache.jena.sparql.core.DatasetGraph>protected ReadWriteLockA lock that needs to be acquired before the list of delegates can be modifiedprotected org.aksw.jenax.dataaccess.sparql.factory.dataengine.RDFEngineFactoryprotected AtomicLongprotected longOnly check database size after that many triplesprotected org.apache.jena.riot.system.PrefixMapprotected longprotected Propertiesprotected Pathprotected org.aksw.jenax.dataaccess.sparql.common.TransactionalMultiplex<org.apache.jena.sparql.core.Transactional> -
Constructor Summary
ConstructorsConstructorDescriptionDatasetGraphRailed(Path railPropertiesFile, org.aksw.jenax.dataaccess.sparql.factory.dataengine.RDFEngineFactory delegateFactory) -
Method Summary
Modifier and TypeMethodDescriptionvoidadd(org.apache.jena.sparql.core.Quad quad) voidaddGraph(org.apache.jena.graph.Node graphName, org.apache.jena.graph.Graph graph) protected voidaddRail()protected voidcheckTxn()voidclose()voiddelete(org.apache.jena.sparql.core.Quad quad) Iterator<org.apache.jena.sparql.core.Quad>find(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o) Iterator<org.apache.jena.sparql.core.Quad>findNG(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o) org.apache.jena.graph.Graphorg.apache.jena.sparql.core.Transactionalorg.apache.jena.graph.GraphgetGraph(org.apache.jena.graph.Node graphNode) static longgetNumRailMembers(Properties props) org.apache.jena.riot.system.PrefixMapprefixes()static voidsetNumRailMembers(Properties props, long count) booleanMethods inherited from class org.apache.jena.sparql.core.DatasetGraphQuads
listGraphNodes, removeGraphMethods inherited from class org.apache.jena.sparql.core.DatasetGraphBase
add, clear, contains, contains, containsGraph, delete, deleteAny, deleteAny, find, find, getContext, getLock, getUnionGraph, isEmpty, isWildcard, size, toString, unsupportedMethodMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.jena.sparql.core.DatasetGraph
addAll, stream, stream, supportsTransactionAbortMethods inherited from interface org.apache.jena.sparql.core.Transactional
begin, calc, calculate, calculateRead, calculateWrite, exec, execute, executeRead, executeWrite, promoteMethods inherited from interface org.aksw.jenax.dataaccess.sparql.common.TransactionalWrapper
abort, begin, begin, commit, end, getTransactionalDelegate, isInTransaction, promote, transactionMode, transactionType
-
Field Details
-
prefixes
protected org.apache.jena.riot.system.PrefixMap prefixes -
newRailCheckIntervalSize
protected long newRailCheckIntervalSizeOnly check database size after that many triples -
newRailCheckCount
-
delegatesLock
A lock that needs to be acquired before the list of delegates can be modified -
delegates
-
transactional
protected org.aksw.jenax.dataaccess.sparql.common.TransactionalMultiplex<org.apache.jena.sparql.core.Transactional> transactional -
railPropertiesFile
-
railMemberSizeLimit
protected long railMemberSizeLimit -
railProperties
-
memberFactory
protected org.aksw.jenax.dataaccess.sparql.factory.dataengine.RDFEngineFactory memberFactory
-
-
Constructor Details
-
DatasetGraphRailed
public DatasetGraphRailed(Path railPropertiesFile, org.aksw.jenax.dataaccess.sparql.factory.dataengine.RDFEngineFactory delegateFactory)
-
-
Method Details
-
checkTxn
protected void checkTxn() -
getNumRailMembers
-
setNumRailMembers
-
prefixes
public org.apache.jena.riot.system.PrefixMap prefixes()- Specified by:
prefixesin interfaceorg.apache.jena.sparql.core.DatasetGraph
-
supportsTransactions
public boolean supportsTransactions()- Specified by:
supportsTransactionsin interfaceorg.apache.jena.sparql.core.DatasetGraph
-
getDelegate
public org.apache.jena.sparql.core.Transactional getDelegate()- Specified by:
getDelegatein interfaceorg.aksw.jenax.dataaccess.sparql.common.TransactionalWrapper
-
addRail
protected void addRail() -
add
public void add(org.apache.jena.sparql.core.Quad quad) - Specified by:
addin interfaceorg.apache.jena.sparql.core.DatasetGraph- Specified by:
addin classorg.apache.jena.sparql.core.DatasetGraphQuads
-
delete
public void delete(org.apache.jena.sparql.core.Quad quad) - Specified by:
deletein interfaceorg.apache.jena.sparql.core.DatasetGraph- Specified by:
deletein classorg.apache.jena.sparql.core.DatasetGraphQuads
-
find
public Iterator<org.apache.jena.sparql.core.Quad> find(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o) - Specified by:
findin interfaceorg.apache.jena.sparql.core.DatasetGraph- Specified by:
findin classorg.apache.jena.sparql.core.DatasetGraphQuads
-
findNG
public Iterator<org.apache.jena.sparql.core.Quad> findNG(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o) - Specified by:
findNGin interfaceorg.apache.jena.sparql.core.DatasetGraph- Specified by:
findNGin classorg.apache.jena.sparql.core.DatasetGraphQuads
-
getDefaultGraph
public org.apache.jena.graph.Graph getDefaultGraph()- Specified by:
getDefaultGraphin interfaceorg.apache.jena.sparql.core.DatasetGraph- Specified by:
getDefaultGraphin classorg.apache.jena.sparql.core.DatasetGraphBase
-
getGraph
public org.apache.jena.graph.Graph getGraph(org.apache.jena.graph.Node graphNode) - Specified by:
getGraphin interfaceorg.apache.jena.sparql.core.DatasetGraph- Specified by:
getGraphin classorg.apache.jena.sparql.core.DatasetGraphBase
-
addGraph
public void addGraph(org.apache.jena.graph.Node graphName, org.apache.jena.graph.Graph graph) - Specified by:
addGraphin interfaceorg.apache.jena.sparql.core.DatasetGraph- Overrides:
addGraphin classorg.apache.jena.sparql.core.DatasetGraphQuads
-
close
public void close()- Specified by:
closein interfaceorg.apache.jena.atlas.lib.Closeable- Specified by:
closein interfaceorg.apache.jena.sparql.core.DatasetGraph- Overrides:
closein classorg.apache.jena.sparql.core.DatasetGraphBase
-