Class SynchronizedModel
- java.lang.Object
-
- org.eclipse.rdf4j.model.util.SynchronizedModel
-
-
Constructor Summary
Constructors Constructor Description SynchronizedModel(Model delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(Resource subj, IRI pred, Value obj, Resource... contexts)
Adds one or more statements to the model.boolean
add(Statement statement)
boolean
addAll(java.util.Collection<? extends Statement> c)
void
clear()
boolean
clear(Resource... context)
Removes statements with the specified context exist in this model.boolean
contains(java.lang.Object o)
boolean
contains(Resource subj, IRI pred, Value obj, Resource... contexts)
Determines if statements with the specified subject, predicate, object and (optionally) context exist in this model.boolean
containsAll(java.util.Collection<?> c)
java.util.Set<Resource>
contexts()
Returns aSet
view of the contexts contained in this model.boolean
equals(java.lang.Object o)
Model
filter(Resource subj, IRI pred, Value obj, Resource... contexts)
Returns a filtered view of the statements with the specified subject, predicate, object and (optionally) context.void
forEach(java.util.function.Consumer<? super Statement> action)
java.util.Optional<Namespace>
getNamespace(java.lang.String prefix)
Gets the namespace that is associated with the specified prefix, if any.java.util.Set<Namespace>
getNamespaces()
Gets the set that contains the assigned namespaces.int
hashCode()
boolean
isEmpty()
java.util.Iterator<Statement>
iterator()
java.util.Set<Value>
objects()
Returns aSet
view of the objects contained in this model.java.util.stream.Stream<Statement>
parallelStream()
java.util.Set<IRI>
predicates()
Returns aSet
view of the predicates contained in this model.boolean
remove(java.lang.Object o)
boolean
remove(Resource subj, IRI pred, Value obj, Resource... contexts)
Removes statements with the specified subject, predicate, object and (optionally) context exist in this model.boolean
removeAll(java.util.Collection<?> c)
boolean
removeIf(java.util.function.Predicate<? super Statement> filter)
java.util.Optional<Namespace>
removeNamespace(java.lang.String prefix)
Removes a namespace declaration by removing the association between a prefix and a namespace name.boolean
retainAll(java.util.Collection<?> c)
Namespace
setNamespace(java.lang.String prefix, java.lang.String name)
Sets the prefix for a namespace.void
setNamespace(Namespace namespace)
Sets the prefix for a namespace.int
size()
java.util.Spliterator<Statement>
spliterator()
java.util.stream.Stream<Statement>
stream()
java.util.Set<Resource>
subjects()
Returns aSet
view of the subjects contained in this model.java.lang.Object[]
toArray()
<T> T[]
toArray(T[] a)
Model
unmodifiable()
Returns an unmodifiable view of this model.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.model.Model
getStatements
-
-
-
-
Field Detail
-
delegate
private final Model delegate
-
-
Constructor Detail
-
SynchronizedModel
SynchronizedModel(Model delegate)
-
-
Method Detail
-
unmodifiable
public Model unmodifiable()
Description copied from interface:Model
Returns an unmodifiable view of this model. This method provides "read-only" access to this model. Query operations on the returned model "read through" to this model, and attempts to modify the returned model, whether direct or via its iterator, result in anUnsupportedOperationException
.- Specified by:
unmodifiable
in interfaceModel
- Returns:
- an unmodifiable view of the specified set.
-
setNamespace
public Namespace setNamespace(java.lang.String prefix, java.lang.String name)
Description copied from interface:Model
Sets the prefix for a namespace. This will replace any existing namespace associated to the prefix.- Specified by:
setNamespace
in interfaceModel
- Parameters:
prefix
- The new prefix.name
- The namespace name that the prefix maps to.- Returns:
- The
Namespace
object for the given namespace.
-
setNamespace
public void setNamespace(Namespace namespace)
Description copied from interface:Model
Sets the prefix for a namespace. This will replace any existing namespace associated to the prefix.- Specified by:
setNamespace
in interfaceModel
- Parameters:
namespace
- ANamespace
object to use in this Model.
-
removeNamespace
public java.util.Optional<Namespace> removeNamespace(java.lang.String prefix)
Description copied from interface:Model
Removes a namespace declaration by removing the association between a prefix and a namespace name.- Specified by:
removeNamespace
in interfaceModel
- Parameters:
prefix
- The namespace prefix of which the assocation with a namespace name is to be removed.- Returns:
- the previous namespace bound to the prefix or
Optional.empty()
-
contains
public boolean contains(Resource subj, IRI pred, Value obj, Resource... contexts)
Description copied from interface:Model
Determines if statements with the specified subject, predicate, object and (optionally) context exist in this model. Thesubject
,predicate
andobject
parameters can benull
to indicate wildcards. Thecontexts
parameter is a wildcard and accepts zero or more values. If no contexts are specified, statements will match disregarding their context. If one or more contexts are specified, statements with a context matching one of these will match. Note: to match statements without an associated context, specify the valuenull
and explicitly cast it to typeResource
.Examples:
model.contains(s1, null, null)
is true if any statements in this model have subjects1
,
model.contains(null, null, null, c1)
is true if any statements in this model have contextc1
,
model.contains(null, null, null, (Resource)null)
is true if any statements in this model have no associated context,
model.contains(null, null, null, c1, c2, c3)
is true if any statements in this model have contextc1
,c2
orc3
.- Specified by:
contains
in interfaceModel
- Parameters:
subj
- The subject of the statements to match,null
to match statements with any subject.pred
- The predicate of the statements to match,null
to match statements with any predicate.obj
- The object of the statements to match,null
to match statements with any object.contexts
- The contexts of the statements to match. If no contexts are specified, statements will match disregarding their context. If one or more contexts are specified, statements with a context matching one of these will match.- Returns:
true
if statements match the specified pattern.
-
add
public boolean add(Resource subj, IRI pred, Value obj, Resource... contexts)
Description copied from interface:Model
Adds one or more statements to the model. This method creates a statement for each specified context and adds those to the model. If no contexts are specified, a single statement with no associated context is added. If this Model is a filtered Model then null (if context empty) values are permitted and will use the corresponding filtered values.
-
clear
public boolean clear(Resource... context)
Description copied from interface:Model
Removes statements with the specified context exist in this model.
-
remove
public boolean remove(Resource subj, IRI pred, Value obj, Resource... contexts)
Description copied from interface:Model
Removes statements with the specified subject, predicate, object and (optionally) context exist in this model. Thesubject
,predicate
andobject
parameters can benull
to indicate wildcards. Thecontexts
parameter is a wildcard and accepts zero or more values. If no contexts are specified, statements will be removed disregarding their context. If one or more contexts are specified, statements with a context matching one of these will be removed. Note: to remove statements without an associated context, specify the valuenull
and explicitly cast it to typeResource
.Examples:
model.remove(s1, null, null)
removes any statements in this model have subjects1
,
model.remove(null, null, null, c1)
removes any statements in this model have contextc1
,
model.remove(null, null, null, (Resource)null)
removes any statements in this model have no associated context,
model.remove(null, null, null, c1, c2, c3)
removes any statements in this model have contextc1
,c2
orc3
.- Specified by:
remove
in interfaceModel
- Parameters:
subj
- The subject of the statements to remove,null
to remove statements with any subject.pred
- The predicate of the statements to remove,null
to remove statements with any predicate.obj
- The object of the statements to remove,null
to remove statements with any object.contexts
- The contexts of the statements to remove. If no contexts are specified, statements will be removed disregarding their context. If one or more contexts are specified, statements with a context matching one of these will be removed.- Returns:
true
if one or more statements have been removed.
-
filter
public Model filter(Resource subj, IRI pred, Value obj, Resource... contexts)
Description copied from interface:Model
Returns a filtered view of the statements with the specified subject, predicate, object and (optionally) context. Thesubject
,predicate
andobject
parameters can benull
to indicate wildcards. Thecontexts
parameter is a wildcard and accepts zero or more values. If no contexts are specified, statements will match disregarding their context. If one or more contexts are specified, statements with a context matching one of these will match. Note: to match statements without an associated context, specify the valuenull
and explicitly cast it to typeResource
.The returned model is backed by this Model, so changes to this Model are reflected in the returned model, and vice-versa. If this Model is modified while an iteration over the returned model is in progress (except through the iterator's own
remove
operation), the results of the iteration are undefined. The model supports element removal, which removes the corresponding statement from this Model, via theIterator.remove
,Set.remove
,removeAll
,retainAll
, andclear
operations. The statements passed to theadd
andaddAll
operations must match the parameter pattern.Examples:
model.filter(s1, null, null)
matches all statements that have subjects1
,
model.filter(null, null, null, c1)
matches all statements that have contextc1
,
model.filter(null, null, null, (Resource)null)
matches all statements that have no associated context,
model.filter(null, null, null, c1, c2, c3)
matches all statements that have contextc1
,c2
orc3
.- Specified by:
filter
in interfaceModel
- Parameters:
subj
- The subject of the statements to match,null
to match statements with any subject.pred
- The predicate of the statements to match,null
to match statements with any predicate.obj
- The object of the statements to match,null
to match statements with any object.contexts
- The contexts of the statements to match. If no contexts are specified, statements will match disregarding their context. If one or more contexts are specified, statements with a context matching one of these will match.- Returns:
- The statements that match the specified pattern.
- See Also:
Model.getStatements(Resource, IRI, Value, Resource...)
-
subjects
public java.util.Set<Resource> subjects()
Description copied from interface:Model
Returns aSet
view of the subjects contained in this model. The set is backed by the model, so changes to the model are reflected in the set, and vice-versa. If the model is modified while an iteration over the set is in progress (except through the iterator's ownremove
operation), the results of the iteration are undefined. The set supports element removal, which removes all statements from the model for which that element is a subject value, via theIterator.remove
,Set.remove
,removeAll
,retainAll
, andclear
operations. It does not support theadd
oraddAll
operations if the parameterspred
orobj
are null.
-
predicates
public java.util.Set<IRI> predicates()
Description copied from interface:Model
Returns aSet
view of the predicates contained in this model. The set is backed by the model, so changes to the model are reflected in the set, and vice-versa. If the model is modified while an iteration over the set is in progress (except through the iterator's ownremove
operation), the results of the iteration are undefined. The set supports element removal, which removes all statements from the model for which that element is a predicate value, via theIterator.remove
,Set.remove
,removeAll
,retainAll
, andclear
operations. It does not support theadd
oraddAll
operations if the parameterssubj
orobj
are null.- Specified by:
predicates
in interfaceModel
- Returns:
- a set view of the predicates contained in this model
-
objects
public java.util.Set<Value> objects()
Description copied from interface:Model
Returns aSet
view of the objects contained in this model. The set is backed by the model, so changes to the model are reflected in the set, and vice-versa. If the model is modified while an iteration over the set is in progress (except through the iterator's ownremove
operation), the results of the iteration are undefined. The set supports element removal, which removes all statements from the model for which that element is an object value, via theIterator.remove
,Set.remove
,removeAll
,retainAll
, andclear
operations. It does not support theadd
oraddAll
operations if the parameterssubj
orpred
are null.
-
contexts
public java.util.Set<Resource> contexts()
Description copied from interface:Model
Returns aSet
view of the contexts contained in this model. The set is backed by the model, so changes to the model are reflected in the set, and vice-versa. If the model is modified while an iteration over the set is in progress (except through the iterator's ownremove
operation), the results of the iteration are undefined. The set supports element removal, which removes all statements from the model for which that element is a context value, via theIterator.remove
,Set.remove
,removeAll
,retainAll
, andclear
operations. It does not support theadd
oraddAll
operations if the parameterssubj
,pred
orobj
are null.
-
removeIf
public boolean removeIf(java.util.function.Predicate<? super Statement> filter)
- Specified by:
removeIf
in interfacejava.util.Collection<Statement>
-
stream
public java.util.stream.Stream<Statement> stream()
- Specified by:
stream
in interfacejava.util.Collection<Statement>
-
parallelStream
public java.util.stream.Stream<Statement> parallelStream()
- Specified by:
parallelStream
in interfacejava.util.Collection<Statement>
-
forEach
public void forEach(java.util.function.Consumer<? super Statement> action)
- Specified by:
forEach
in interfacejava.lang.Iterable<Statement>
-
getNamespaces
public java.util.Set<Namespace> getNamespaces()
Description copied from interface:NamespaceAware
Gets the set that contains the assigned namespaces.- Specified by:
getNamespaces
in interfaceNamespaceAware
- Returns:
- A
Set
containing theNamespace
objects that are available.
-
getNamespace
public java.util.Optional<Namespace> getNamespace(java.lang.String prefix)
Description copied from interface:NamespaceAware
Gets the namespace that is associated with the specified prefix, if any. If multiple namespaces match the given prefix, the result may not be consistent over successive calls to this method.- Specified by:
getNamespace
in interfaceNamespaceAware
- Parameters:
prefix
- A namespace prefix.- Returns:
- The namespace name that is associated with the specified prefix, or
Optional.empty()
if there is no such namespace.
-
size
public int size()
-
isEmpty
public boolean isEmpty()
-
contains
public boolean contains(java.lang.Object o)
-
iterator
public java.util.Iterator<Statement> iterator()
-
toArray
public java.lang.Object[] toArray()
-
toArray
public <T> T[] toArray(T[] a)
-
add
public boolean add(Statement statement)
-
remove
public boolean remove(java.lang.Object o)
-
containsAll
public boolean containsAll(java.util.Collection<?> c)
-
addAll
public boolean addAll(java.util.Collection<? extends Statement> c)
-
retainAll
public boolean retainAll(java.util.Collection<?> c)
-
removeAll
public boolean removeAll(java.util.Collection<?> c)
-
clear
public void clear()
-
equals
public boolean equals(java.lang.Object o)
-
hashCode
public int hashCode()
-
-