Package org.eclipse.rdf4j.sail.base
Class ObservingSailDataset
java.lang.Object
org.eclipse.rdf4j.sail.base.DelegatingSailDataset
org.eclipse.rdf4j.sail.base.ObservingSailDataset
- All Implemented Interfaces:
AutoCloseable
,SailClosable
,SailDataset
A
IsolationLevels.SERIALIZABLE
SailDataset
that tracks the observed statement patterns to an
SailSink.observe(Resource, IRI, Value, Resource...)
to check consistency.-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionObservingSailDataset
(SailDataset delegate, SailSink observer) Creates aIsolationLevels.SERIALIZABLE
SailDataset
that tracks consistency. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Called when thisSailDataset
is no longer is used, such as when a read operation is complete.CloseableIteration
<? extends Resource, SailException> Returns the set of all unique context identifiers that are used to store statements.CloseableIteration
<? extends Statement, SailException> getStatements
(Resource subj, IRI pred, Value obj, Resource... contexts) Gets all statements that have a specific subject, predicate and/or object.Methods inherited from class org.eclipse.rdf4j.sail.base.DelegatingSailDataset
getNamespace, getNamespaces, getTriples, toString
-
Field Details
-
observer
TheSailSink
that is tracking the statement patterns.
-
-
Constructor Details
-
ObservingSailDataset
Creates aIsolationLevels.SERIALIZABLE
SailDataset
that tracks consistency.- Parameters:
delegate
- to beSailDataset.close()
when thisSailDataset
is closed.observer
- to beSailSink.flush()
andSailClosable.close()
when thisSailDataset
is closed.
-
-
Method Details
-
close
Description copied from interface:SailDataset
Called when thisSailDataset
is no longer is used, such as when a read operation is complete. An isolation level compatible withIsolationLevels.SNAPSHOT
will ensure the state of thisSailDataset
dose not change between the first call to this object untilinvalid reference
SailClosable#release()
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceSailClosable
- Specified by:
close
in interfaceSailDataset
- Overrides:
close
in classDelegatingSailDataset
- Throws:
SailException
- if this resource cannot be closed
-
getContextIDs
Description copied from interface:SailDataset
Returns the set of all unique context identifiers that are used to store statements.- Specified by:
getContextIDs
in interfaceSailDataset
- Overrides:
getContextIDs
in classDelegatingSailDataset
- Returns:
- An iterator over the context identifiers, should not contain any duplicates.
- Throws:
SailException
-
getStatements
public CloseableIteration<? extends Statement,SailException> getStatements(Resource subj, IRI pred, Value obj, Resource... contexts) throws SailException Description copied from interface:SailDataset
Gets all statements that have a specific subject, predicate and/or object. All three parameters may be null to indicate wildcards. Optionally a (set of) context(s) may be specified in which case the result will be restricted to statements matching one or more of the specified contexts.- Specified by:
getStatements
in interfaceSailDataset
- Overrides:
getStatements
in classDelegatingSailDataset
- Parameters:
subj
- A Resource specifying the subject, or null for a wildcard.pred
- A IRI specifying the predicate, or null for a wildcard.obj
- A Value specifying the object, or null for a wildcard.contexts
- The context(s) to get the statements from. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on all contexts.- Returns:
- An iterator over the relevant statements.
- Throws:
SailException
- If the triple source failed to get the statements.
-