| com.hp.hpl.jena.db.impl.SpecializedGraph
All known Subclasses: com.hp.hpl.jena.db.impl.SpecializedGraphBase,
SpecializedGraph | public interface SpecializedGraph (Code) | | Interface for a specialized graph.
Each specialized graph is optimized for a particular type of statement.
An implemenation of GraphRDB will contain a list of specialized graphs
and will attempt to perform each operation on each specialized graph
in the list until one indicates the operation is complete.
The list of specialized graphs is immutable. This aids optimization.
For example, if a specialied graph is asked to perform an operatin
on a triple, and it knows that it would have added it if asked, then
it can advise the calling GraphRDB that the operaton is complete even
though it doesn't know anything about other specialized graphs later
in the list.
author: csayers version: $Revision: 1.10 $ |
Inner Class :public class CompletionFlag | |
Method Summary | |
public void | add(Triple t, CompletionFlag complete) Attempt to add a triple to the specialized graph
Note that when calling add, the call will either fail (complete=false)
indicating the graph can not store the triple, or succeed (complete=true)
indicating that a subsequent call to contains(triple) will return true
and that the add operation is complete. | public void | add(List triples, CompletionFlag complete) Attempt to add a list of triples to the specialized graph
As each triple is successfully added it is removed from the List.
If complete is true then the entire List was added and the List will
be empty upon return. | public void | add(Graph g, CompletionFlag complete) Attempt to add all the triples from a graph to the specialized graph
Caution - this call changes the graph passed in, deleting from
it each triple that is successfully added.
Note that when calling add, if complete is true, then the entire
graph was added successfully and the graph g will be empty upon
return. | public void | clear() Clear the specialized graph
This removes any triples stored in the graph. | public void | close() Close specialized graph. | public boolean | contains(Triple t, CompletionFlag complete) Tests if a triple is contained in the specialized graph
Parameters: t - is the triple to be tested Parameters: complete - is true if the graph can guarantee that no other specialized graph could hold any matching triples. | public void | delete(Triple t, CompletionFlag complete) | public void | delete(List triples, CompletionFlag complete) Attempt to delete a list of triples from the specialized graph
As each triple is successfully deleted it is removed from the List.
If complete is true then the entire List was deleted and the List will
be empty upon return. | public ExtendedIterator | find(TripleMatch m, CompletionFlag complete) Finds matching triples contained in the specialized graph
Parameters: m - Parameters: complete - is true if the graph can guarantee that no other specialized graph could hold any matching triples. | public ExtendedIterator | find(Node s, Node p, Node o, CompletionFlag complete) Finds matching triples contained in the specialized graph
Parameters: s - the subject of the match Parameters: p - the predicate of the match Parameters: o - the object of the match Parameters: complete - is true if the graph can guarantee that no other specialized graph could hold any matching triples. | public DBPropLSet | getDBPropLSet() Return the DBPropLSet for this specialized graph. | public int | getGraphId() Database identifier of the GraphRDB that contains this specialized graph. | public IPSet | getPSet() Return the PSet that implements this specialized graph. | public char | subsumes(Triple pattern, int reificationBehavior) Determine if the graph contains any triples for the pattern.
Parameters: pattern - the pattern. | public int | tripleCount() Compute the number of unique triples added to the Specialized Graph. |
allTriplesForPattern | final static char allTriplesForPattern(Code) | | |
noTriplesForPattern | final static char noTriplesForPattern(Code) | | |
someTriplesForPattern | final static char someTriplesForPattern(Code) | | |
add | public void add(Triple t, CompletionFlag complete)(Code) | | Attempt to add a triple to the specialized graph
Note that when calling add, the call will either fail (complete=false)
indicating the graph can not store the triple, or succeed (complete=true)
indicating that a subsequent call to contains(triple) will return true
and that the add operation is complete.
Adding the same triple twice is not an error and should still cause
complete to be true.
If the triple can't be stored for any reason other than incompatability
(for example, a lack of disk space) then the implemenation should throw
a runtime exception.
Parameters: t - is the triple to be added Parameters: complete - is true if a subsequent call to contains(triple) will return true. |
add | public void add(List triples, CompletionFlag complete)(Code) | | Attempt to add a list of triples to the specialized graph
As each triple is successfully added it is removed from the List.
If complete is true then the entire List was added and the List will
be empty upon return. if complete is false, then at least one triple
remains in the List.
If a triple can't be stored for any reason other than incompatability
(for example, a lack of disk space) then the implemenation should throw
a runtime exception.
Parameters: triples - List of triples to be added. This is modified by the call. Parameters: complete - is true if a subsequent call to contains(triple) will return true for all triples originally in the List. |
add | public void add(Graph g, CompletionFlag complete)(Code) | | Attempt to add all the triples from a graph to the specialized graph
Caution - this call changes the graph passed in, deleting from
it each triple that is successfully added.
Note that when calling add, if complete is true, then the entire
graph was added successfully and the graph g will be empty upon
return. If complete is false, then some triples in the graph could
not be added. Those triples remain in g after the call returns.
If the triple can't be stored for any reason other than incompatability
(for example, a lack of disk space) then the implemenation should throw
a runtime exception.
Parameters: g - is a graph containing triples to be added Parameters: complete - is true if a subsequent call to contains(triple) will return true for any triple in g. |
clear | public void clear()(Code) | | Clear the specialized graph
This removes any triples stored in the graph.
|
close | public void close()(Code) | | Close specialized graph.
This frees any resources used by the graph.
It is an error to perform any operation on a graph after closing it.
|
contains | public boolean contains(Triple t, CompletionFlag complete)(Code) | | Tests if a triple is contained in the specialized graph
Parameters: t - is the triple to be tested Parameters: complete - is true if the graph can guarantee that no other specialized graph could hold any matching triples. boolean result to indicte if the triple was contained |
delete | public void delete(Triple t, CompletionFlag complete)(Code) | | Attempt to delete a triple from the specialized graph
Parameters: t - is the triple to be deleted Parameters: complete - is true if either (i) the triple was in the graph and was deleted, or (ii) the triple was not in the graph the graph can guarantee that a call to add(Triple)would have succeeded, had it been made for that same triple. |
delete | public void delete(List triples, CompletionFlag complete)(Code) | | Attempt to delete a list of triples from the specialized graph
As each triple is successfully deleted it is removed from the List.
If complete is true then the entire List was deleted and the List will
be empty upon return. If complete is false, then at least one triple
remains in the List.
Parameters: triples - List of triples to be deleted. This is modified by the call. Parameters: complete - is true iff delete(Triple, complete) would have set complete==true for all triples in the List. |
find | public ExtendedIterator find(TripleMatch m, CompletionFlag complete)(Code) | | Finds matching triples contained in the specialized graph
Parameters: m - Parameters: complete - is true if the graph can guarantee that no other specialized graph could hold any matching triples. ExtendedIterator which iterates over any matching triples |
find | public ExtendedIterator find(Node s, Node p, Node o, CompletionFlag complete)(Code) | | Finds matching triples contained in the specialized graph
Parameters: s - the subject of the match Parameters: p - the predicate of the match Parameters: o - the object of the match Parameters: complete - is true if the graph can guarantee that no other specialized graph could hold any matching triples. ExtendedIterator which iterates over any matching triples |
getDBPropLSet | public DBPropLSet getDBPropLSet()(Code) | | Return the DBPropLSet for this specialized graph.
DBPropLSet for this specialized graph. |
getGraphId | public int getGraphId()(Code) | | Database identifier of the GraphRDB that contains this specialized graph.
IDBID database identifier of the GraphRDB that contains this specialized graph. |
getPSet | public IPSet getPSet()(Code) | | Return the PSet that implements this specialized graph.
IPSet the PSet that implements this specialized graph. |
subsumes | public char subsumes(Triple pattern, int reificationBehavior)(Code) | | Determine if the graph contains any triples for the pattern.
Parameters: pattern - the pattern. char indicator, 'n', 's', 'a' for no, some, all triples for pattern. |
tripleCount | public int tripleCount()(Code) | | Compute the number of unique triples added to the Specialized Graph.
int count. |
|
|