java.lang.Object
org.apache.jena.mem2.store.legacy.LegacyTripleStore
- All Implemented Interfaces:
TripleStore
Successor of
GraphTripleStoreMem
that uses term-equality
instead of literal value equality.
This implementation also does not support Iterator.remove()
.
Inner structure:
- three NodeToTriplesMapMem
instances for each of the three triple fields (subject, predicate, object)
- each of these maps is a HashCommonMap
with Node
keys and JenaSet
values.
- for up to 9 triples with the same subject, predicate or object, the JenaSet
is
a ArrayBunch
, otherwise it is a HashedTripleBunch
.
Additional optimizations:
- because we know that if a triple exists in one of the maps, it also exists in the other two, we can use the
JenaSet.addUnchecked(java.lang.Object)
and
JenaMapSetCommon.removeUnchecked(java.lang.Object)
methods to avoid
unnecessary checks.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a triple to the map.void
clear()
Remove all triples from the map.boolean
Answer true if the graph contains any triple matchingt
.int
Return the number of triples in the map.Returns anExtendedIterator
of all triples in the graph matching the given triple match.boolean
isEmpty()
Return true if the map is empty.void
Remove a triple from the map.stream()
Returns aStream
of all triples in the graph.Returns aStream
of Triples matching the given pattern.
-
Constructor Details
-
LegacyTripleStore
public LegacyTripleStore()
-
-
Method Details
-
add
Description copied from interface:TripleStore
Add a triple to the map.- Specified by:
add
in interfaceTripleStore
- Parameters:
triple
- to add
-
remove
Description copied from interface:TripleStore
Remove a triple from the map.- Specified by:
remove
in interfaceTripleStore
- Parameters:
triple
- to remove
-
clear
public void clear()Description copied from interface:TripleStore
Remove all triples from the map.- Specified by:
clear
in interfaceTripleStore
-
countTriples
public int countTriples()Description copied from interface:TripleStore
Return the number of triples in the map.- Specified by:
countTriples
in interfaceTripleStore
-
isEmpty
public boolean isEmpty()Description copied from interface:TripleStore
Return true if the map is empty.- Specified by:
isEmpty
in interfaceTripleStore
-
contains
Description copied from interface:TripleStore
Answer true if the graph contains any triple matchingt
.- Specified by:
contains
in interfaceTripleStore
- Parameters:
tripleMatch
- triple match pattern, which may be contained
-
stream
Description copied from interface:TripleStore
Returns aStream
of all triples in the graph. Note:BaseStream.parallel()
is supported.- Specified by:
stream
in interfaceTripleStore
- Returns:
- a stream of triples in this graph.
-
stream
Description copied from interface:TripleStore
Returns aStream
of Triples matching the given pattern. Note:BaseStream.parallel()
is supported.- Specified by:
stream
in interfaceTripleStore
- Parameters:
tripleMatch
- triple match pattern- Returns:
- a stream of triples in this graph matching the pattern.
-
find
Description copied from interface:TripleStore
Returns anExtendedIterator
of all triples in the graph matching the given triple match.- Specified by:
find
in interfaceTripleStore
-