public class LockableMGraphWrapper extends Object implements LockableMGraph
LockableMGraph
.Constructor and Description |
---|
LockableMGraphWrapper(MGraph providedMGraph)
Constructs a LocalbleMGraph for an MGraph.
|
LockableMGraphWrapper(MGraph providedMGraph,
java.util.concurrent.locks.ReadWriteLock lock) |
Modifier and Type | Method and Description |
---|---|
boolean |
add(Triple e) |
boolean |
addAll(Collection<? extends Triple> c) |
void |
addGraphListener(GraphListener listener,
FilterTriple filter)
Adds the specified
GraphListener to the graph. |
void |
addGraphListener(GraphListener listener,
FilterTriple filter,
long delay)
Adds the specified
GraphListener to the graph. |
void |
clear() |
boolean |
contains(Object o) |
boolean |
containsAll(Collection<?> c) |
boolean |
equals(Object obj)
Returns true if
other represents the same mutable graph as
this instance, false otherwise. |
Iterator<Triple> |
filter(NonLiteral subject,
UriRef predicate,
Resource object)
Filters triples given a pattern.
|
Graph |
getGraph()
Returns the graph
|
java.util.concurrent.locks.ReadWriteLock |
getLock()
The lock provided by this methods allows to create read- and write-locks
that span individual method calls.
|
int |
hashCode() |
boolean |
isEmpty() |
Iterator<Triple> |
iterator() |
boolean |
remove(Object o) |
boolean |
removeAll(Collection<?> c) |
void |
removeGraphListener(GraphListener listener)
Removes the specified
GraphListener from the graph. |
boolean |
retainAll(Collection<?> c) |
int |
size() |
Object[] |
toArray() |
<T> T[] |
toArray(T[] a) |
String |
toString() |
public LockableMGraphWrapper(MGraph providedMGraph)
providedMGraph
- a non-lockable mgraphpublic LockableMGraphWrapper(MGraph providedMGraph, java.util.concurrent.locks.ReadWriteLock lock)
public java.util.concurrent.locks.ReadWriteLock getLock()
LockableMGraph
getLock
in interface LockableMGraph
public Iterator<Triple> filter(NonLiteral subject, UriRef predicate, Resource object)
TripleCollection
filter
in interface TripleCollection
Iterator
public int size()
size
in interface Collection<Triple>
public boolean isEmpty()
isEmpty
in interface Collection<Triple>
public boolean contains(Object o)
contains
in interface Collection<Triple>
public Object[] toArray()
toArray
in interface Collection<Triple>
public <T> T[] toArray(T[] a)
toArray
in interface Collection<Triple>
public boolean containsAll(Collection<?> c)
containsAll
in interface Collection<Triple>
public boolean add(Triple e)
add
in interface Collection<Triple>
public boolean remove(Object o)
remove
in interface Collection<Triple>
public boolean addAll(Collection<? extends Triple> c)
addAll
in interface Collection<Triple>
public boolean removeAll(Collection<?> c)
removeAll
in interface Collection<Triple>
public boolean retainAll(Collection<?> c)
retainAll
in interface Collection<Triple>
public void clear()
clear
in interface Collection<Triple>
public void addGraphListener(GraphListener listener, FilterTriple filter, long delay)
TripleCollection
GraphListener
to the graph. This listener
will be notified, when the graph is modified and the Triple
that was part of the modifiaction matched the specified
FilterTriple
. The notification will be passed to the
listener after the specified delay time (in milli-seconds) has passed.
If more matching events occur during the delay period, then they are
passed all together at the end of the delay period. If the the listener
unregisters or the platform is stopped within the period then the already
occurred events may not be delivered.
All implementations support this method, immutable implementations will
typically provide an empty implementation, they shall not throw an
exception.
Implementation of which the triples change over time without add- and
remove-methods being called (e.g. implementation dynamically generating
their triples on invocation of the filer-method) may choose not to, or
only partially propagate their changes to the listener. They should
describe the behavior in the documentation of the class.
Implementations should keep weak references the listeners, so that the
listener can be garbage collected if its no longer referenced by another
object.
If delay is 0 notification will happen synchroneously.addGraphListener
in interface TripleCollection
listener
- The listener that will be notifiedfilter
- The triple filter with which triples are tested,
that were part of the modification.delay
- The time period afer which the listener will be notified in milliseconds.public void addGraphListener(GraphListener listener, FilterTriple filter)
TripleCollection
GraphListener
to the graph. This listener
will be notified, when the graph is modified and the Triple
that was part of the modifiaction matched the specified
FilterTriple
. The notification will be passed without delay.
Same as addGraphListener(listener, filter, 0).
addGraphListener
in interface TripleCollection
listener
- The listener that will be notifiedfilter
- The triple filter with which triples are tested,
that were part of the modification.public void removeGraphListener(GraphListener listener)
TripleCollection
GraphListener
from the graph. This
listener will no longer be notified, when the graph is modified.removeGraphListener
in interface TripleCollection
listener
- The listener to be removed.public int hashCode()
hashCode
in interface Collection<Triple>
hashCode
in class Object
public boolean equals(Object obj)
MGraph
other
represents the same mutable graph as
this instance, false otherwise. It returns true if this == other or if it
is otherwise guaranteed that changes to one of the instances are
immediately reflected in the other.Copyright © 2014 The Apache Software Foundation. All Rights Reserved.