- All Superinterfaces:
ModelGetter
,ModelSource
- All Known Implementing Classes:
ModelMakerImpl
A ModelMaker contains a collection of named models, methods for creating
new models [both named and anonymous] and opening previously-named
models, removing models, and accessing a single "default" Model for this
Maker.
Additional constraints are placed on a ModelMaker as compared to its
ancestor ModelSource
. ModelMakers do not arbitrarily forget
their contents - once they contain a named model, that model stays inside
the ModelMaker until that ModelMaker goes away, and maybe for longer
(eg if the ModelMaker fronted a database or directory). And new models
can be added to a ModelMaker.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Close the factory - no more requests need be honoured, and any clean-up can be done.createModel
(String name) Create a Model with the given name if no such model exists.createModel
(String name, boolean strict) Create a new Model associated with the given name.Answer a GraphMaker that makes graphs the same way this ModelMaker makes models.boolean
return true iff the factory has a Model with the given nameAnswer an [extended] iterator where each element is the name of a model in the maker, and the complete sequence exhausts the set of names.Find an existing Model that this factory knows about under the given name.void
removeModel
(String name) Remove the association between the name and the Model. create will now be able to create a Model with that name, and open will no longer be able to find it.Methods inherited from interface org.apache.jena.ontology.models.ModelGetter
getModel, getModel
Methods inherited from interface org.apache.jena.ontology.models.ModelSource
createDefaultModel, createFreshModel, openModel, openModelIfPresent
-
Method Details
-
createModel
Create a new Model 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 Model. Otherwise throw an AlreadyExistsException.- Parameters:
name
- the name to give to the new Modelstrict
- true to cause existing bindings to throw an exception- Throws:
AlreadyExistsException
- if that name is already bound.
-
createModel
Create a Model with the given name if no such model exists. Otherwise, answer the existing model. Equivalent tocreateModel( name, false )
. -
openModel
Find an existing Model that this factory knows about under the given name. If such a Model exists, return it. Otherwise, ifstrict
is false, create a new Model, associate it with the name, and return it. Otherwise throw a DoesNotExistException.When called with
strict=false
, is equivalent to the ancestoropenModel(String)
method.- Parameters:
name
- the name of the Model to find and returnstrict
- false to create a new one if one doesn't already exist- Throws:
DoesNotExistException
- if there's no such named Model
-
removeModel
Remove the association between the name and the Model. create will now be able to create a Model with that name, and open will no longer be able to find it. Throws an exception if there's no such Model. The Model itself is not touched.- Parameters:
name
- the name to disassociate- Throws:
DoesNotExistException
- if the name is unbound
-
hasModel
return true iff the factory has a Model with the given name- Parameters:
name
- the name of the Model to look for- Returns:
- true iff there's a Model with that name
-
close
void close()Close the factory - no more requests need be honoured, and any clean-up can be done. -
getGraphMaker
GraphMaker getGraphMaker()Answer a GraphMaker that makes graphs the same way this ModelMaker makes models. In general this will be an underlying GraphMaker. -
listModels
ExtendedIterator<String> listModels()Answer an [extended] iterator where each element is the name of a model 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 models known to this Maker.
-