Class SchemaCachingRDFSInferencerConnection
- java.lang.Object
-
- org.eclipse.rdf4j.sail.helpers.SailConnectionWrapper
-
- org.eclipse.rdf4j.sail.helpers.NotifyingSailConnectionWrapper
-
- org.eclipse.rdf4j.sail.inferencer.InferencerConnectionWrapper
-
- org.eclipse.rdf4j.sail.inferencer.fc.SchemaCachingRDFSInferencerConnection
-
- All Implemented Interfaces:
AutoCloseable
,FederatedServiceResolverClient
,ThreadSafetyAware
,InferencerConnection
,NotifyingSailConnection
,SailConnection
,SailConnectionListener
public class SchemaCachingRDFSInferencerConnection extends InferencerConnectionWrapper implements SailConnectionListener
- Author:
- HÃ¥vard Mikkelsen Ottestad
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addInferredStatement(Resource subj, IRI pred, Value obj, Resource... contexts)
Adds an inferred statement to a specific context.void
addStatement(Resource subject, IRI predicate, Value object, Resource... contexts)
Adds a statement to the store.void
addStatement(UpdateContext modify, Resource subj, IRI pred, Value obj, Resource... contexts)
Adds a statement to the store.void
begin()
Begins a transaction requiringSailConnection.commit()
orSailConnection.rollback()
to be called to close the transaction.void
begin(IsolationLevel level)
Begins a transaction with the specifiedIsolationLevel
level, requiringSailConnection.commit()
orSailConnection.rollback()
to be called to close the transaction.void
clearInferred(Resource... contexts)
Removes all inferred statements from the specified/all contexts.void
commit()
CallsInferencerConnectionWrapper.flushUpdates()
before forwarding the call to the wrapped connection.void
flushUpdates()
Flushes any pending updates to be processed and the resulting changes to be reported to registeredSailConnectionListener
s.void
rollback()
Rolls back the transaction, discarding any uncommitted changes that have been made in this SailConnection.void
statementAdded(Statement st)
Notifies the listener that a statement has been added in a transaction that it has registered itself with.void
statementRemoved(Statement st)
Notifies the listener that a statement has been removed in a transaction that it has registered itself with.-
Methods inherited from class org.eclipse.rdf4j.sail.inferencer.InferencerConnectionWrapper
evaluate, flush, getContextIDs, getStatements, getWrappedConnection, hasStatement, prepare, removeInferredStatement, size
-
Methods inherited from class org.eclipse.rdf4j.sail.helpers.NotifyingSailConnectionWrapper
addConnectionListener, removeConnectionListener
-
Methods inherited from class org.eclipse.rdf4j.sail.helpers.SailConnectionWrapper
clear, clearNamespaces, close, endUpdate, explain, getFederatedServiceResolver, getNamespace, getNamespaces, isActive, isOpen, pendingRemovals, prepareQuery, removeNamespace, removeStatement, removeStatements, setFederatedServiceResolver, setNamespace, setTransactionSettings, size, startUpdate, supportsConcurrentReads
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.sail.NotifyingSailConnection
addConnectionListener, removeConnectionListener
-
Methods inherited from interface org.eclipse.rdf4j.sail.SailConnection
clear, clearNamespaces, close, endUpdate, explain, getNamespace, getNamespaces, isActive, isOpen, pendingRemovals, prepareQuery, removeNamespace, removeStatement, removeStatements, setNamespace, setTransactionSettings, startUpdate
-
-
-
-
Method Detail
-
clearInferred
public void clearInferred(Resource... contexts) throws SailException
Description copied from interface:InferencerConnection
Removes all inferred statements from the specified/all contexts. If no contexts are specified the method operates on the entire repository.- Specified by:
clearInferred
in interfaceInferencerConnection
- Overrides:
clearInferred
in classInferencerConnectionWrapper
- Parameters:
contexts
- The context(s) from which to remove the statements. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on the entire repository.- Throws:
SailException
- If the statements could not be removed.
-
commit
public void commit() throws SailException
Description copied from class:InferencerConnectionWrapper
CallsInferencerConnectionWrapper.flushUpdates()
before forwarding the call to the wrapped connection.- Specified by:
commit
in interfaceSailConnection
- Overrides:
commit
in classInferencerConnectionWrapper
- Throws:
UnknownSailTransactionStateException
- If the transaction state can not be determined (this can happen for instance when communication between client and server fails or times-out). It does not indicate a problem with the integrity of the store.SailException
- If the SailConnection could not be committed.
-
addInferredStatement
public boolean addInferredStatement(Resource subj, IRI pred, Value obj, Resource... contexts) throws SailException
Description copied from interface:InferencerConnection
Adds an inferred statement to a specific context.- Specified by:
addInferredStatement
in interfaceInferencerConnection
- Overrides:
addInferredStatement
in classInferencerConnectionWrapper
- Parameters:
subj
- The subject of the statement to add.pred
- The predicate of the statement to add.obj
- The object of the statement to add.contexts
- The context(s) to add the statement to. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on the entire repository.- Throws:
SailException
- If the statement could not be added.
-
addStatement
public void addStatement(Resource subject, IRI predicate, Value object, Resource... contexts) throws SailException
Description copied from interface:SailConnection
Adds a statement to the store.- Specified by:
addStatement
in interfaceSailConnection
- Overrides:
addStatement
in classSailConnectionWrapper
- Parameters:
subject
- The subject of the statement to add.predicate
- The predicate of the statement to add.object
- The object of the statement to add.contexts
- The context(s) to add the statement to. Note that this parameter is a vararg and as such is optional. If no contexts are specified, a context-less statement will be added.- Throws:
SailException
- If the statement could not be added, for example because no transaction is active.
-
rollback
public void rollback() throws SailException
Description copied from interface:SailConnection
Rolls back the transaction, discarding any uncommitted changes that have been made in this SailConnection.- Specified by:
rollback
in interfaceSailConnection
- Overrides:
rollback
in classSailConnectionWrapper
- Throws:
UnknownSailTransactionStateException
- If the transaction state can not be determined (this can happen for instance when communication between client and server fails or times-out). It does not indicate a problem with the integrity of the store.SailException
- If the SailConnection could not be rolled back.
-
begin
public void begin() throws SailException
Description copied from interface:SailConnection
Begins a transaction requiringSailConnection.commit()
orSailConnection.rollback()
to be called to close the transaction. The transaction will use the defaultIsolationLevel
level for the SAIL, as returned bySail.getDefaultIsolationLevel()
.- Specified by:
begin
in interfaceSailConnection
- Overrides:
begin
in classSailConnectionWrapper
- Throws:
SailException
- If the connection could not start a transaction or if a transaction is already active on this connection.
-
begin
public void begin(IsolationLevel level) throws SailException
Description copied from interface:SailConnection
Begins a transaction with the specifiedIsolationLevel
level, requiringSailConnection.commit()
orSailConnection.rollback()
to be called to close the transaction.- Specified by:
begin
in interfaceSailConnection
- Overrides:
begin
in classSailConnectionWrapper
- Parameters:
level
- the transaction isolation level on which this transaction operates.- Throws:
UnknownSailTransactionStateException
- If the IsolationLevel is not supported by this implementationSailException
- If the connection could not start a transaction, if the supplied transaction isolation level is not supported, or if a transaction is already active on this connection.
-
flushUpdates
public void flushUpdates() throws SailException
Description copied from interface:InferencerConnection
Flushes any pending updates to be processed and the resulting changes to be reported to registeredSailConnectionListener
s.- Specified by:
flushUpdates
in interfaceInferencerConnection
- Overrides:
flushUpdates
in classInferencerConnectionWrapper
- Throws:
SailException
- If the updates could not be processed.
-
statementAdded
public void statementAdded(Statement st)
Description copied from interface:SailConnectionListener
Notifies the listener that a statement has been added in a transaction that it has registered itself with.- Specified by:
statementAdded
in interfaceSailConnectionListener
- Parameters:
st
- The statement that was added.
-
statementRemoved
public void statementRemoved(Statement st)
Description copied from interface:SailConnectionListener
Notifies the listener that a statement has been removed in a transaction that it has registered itself with.- Specified by:
statementRemoved
in interfaceSailConnectionListener
- Parameters:
st
- The statement that was removed.
-
addStatement
public void addStatement(UpdateContext modify, Resource subj, IRI pred, Value obj, Resource... contexts) throws SailException
Description copied from interface:SailConnection
Adds a statement to the store. Called when adding statements through aUpdateExpr
operation.- Specified by:
addStatement
in interfaceSailConnection
- Overrides:
addStatement
in classSailConnectionWrapper
- Parameters:
modify
- operation properties of theUpdateExpr
operation producing these statements.subj
- The subject of the statement to add.pred
- The predicate of the statement to add.obj
- The object of the statement to add.contexts
- The context(s) to add the statement to. Note that this parameter is a vararg and as such is optional. If no contexts are specified, a context-less statement will be added.- Throws:
SailException
- If the statement could not be added, for example because no transaction is active.
-
-