Package org.apache.jena.graph
Interface GraphMaker
-
- All Known Implementing Classes:
BaseGraphMaker
,SimpleGraphMaker
public interface GraphMaker
A factory for providing instances of named graphs with appropriate storage models. It represents a directory, or a database, or a mapping: names map to graphs for the lifetime of the GraphMaker. Names can be "arbitrary" character sequences.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
close()
Close the factory - no more requests need be honoured, and any clean-up can be done.Graph
createGraph()
Answer a graph who's name isn't interesting.Graph
createGraph(java.lang.String name)
Create a graph that does not already exist - equivalent tocreateGraph( name, false )
.Graph
createGraph(java.lang.String name, boolean strict)
Create a new graph associated with the given name.Graph
getGraph()
Answer the default graph of this GraphMaker.boolean
hasGraph(java.lang.String name)
return true iff the factory has a graph with the given nameExtendedIterator<java.lang.String>
listGraphs()
Answer an [extended] iterator where each element is the name of a graph in the maker, and the complete sequence exhausts the set of names.Graph
openGraph()
Answer the default graph of this GraphMaker, if it has one.Graph
openGraph(java.lang.String name)
Equivalent toopenGraph( name, false )
Graph
openGraph(java.lang.String name, boolean strict)
Find an existing graph that this factory knows about under the given name.void
removeGraph(java.lang.String name)
Remove the association between the name and the graph.
-
-
-
Method Detail
-
getGraph
Graph getGraph()
Answer the default graph of this GraphMaker. The same graph is returned on each call. It may only be constructed on the first call of getGraph(), or at any previous time.- Returns:
- the same default graph each time
-
openGraph
Graph openGraph()
Answer the default graph of this GraphMaker, if it has one. If not, throw an exception.
-
createGraph
Graph createGraph()
Answer a graph who's name isn't interesting. Each call delivers a different graph. The GraphMaker may reserve a bunch of names for this purpose, of the form "anon_", if it cannot support truly anonymous graphs. - Returns:
- a fresh anonymous graph
-
createGraph
Graph createGraph(java.lang.String name, boolean strict)
Create a new graph associated with the given name. If there is no such association, create one and return it. If one exists butstrict
is false, return the associated graph. Otherwise throw an AlreadyExistsException.- Parameters:
name
- the name to give to the new graphstrict
- true to cause existing bindings to throw an exception- Throws:
AlreadyExistsException
- if that name is already bound.
-
createGraph
Graph createGraph(java.lang.String name)
Create a graph that does not already exist - equivalent tocreateGraph( name, false )
.
-
openGraph
Graph openGraph(java.lang.String name, boolean strict)
Find an existing graph that this factory knows about under the given name. If such a graph exists, return it. Otherwise, ifstrict
is false, create a new graph, associate it with the name, and return it. Otherwise throw a DoesNotExistException.- Parameters:
name
- the name of the graph to find and returnstrict
- false to create a new one if one doesn't already exist- Throws:
DoesNotExistException
- if there's no such named graph
-
openGraph
Graph openGraph(java.lang.String name)
Equivalent toopenGraph( name, false )
-
removeGraph
void removeGraph(java.lang.String name)
Remove the association between the name and the graph. create will now be able to create a graph with that name, and open will no longer be able to find it. Throws an exception if there's no such graph. The graph itself is not touched.- Parameters:
name
- the name to disassociate- Throws:
DoesNotExistException
- if the name is unbound
-
hasGraph
boolean hasGraph(java.lang.String name)
return true iff the factory has a graph with the given name- Parameters:
name
- the name of the graph to look for- Returns:
- true iff there's a graph with that name
-
close
void close()
Close the factory - no more requests need be honoured, and any clean-up can be done.
-
listGraphs
ExtendedIterator<java.lang.String> listGraphs()
Answer an [extended] iterator where each element is the name of a graph in the maker, and the complete sequence exhausts the set of names. No particular order is expected from the list.- Returns:
- an extended iterator over the names of graphs known to this Maker.
-
-