|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.hp.hpl.jena.enhanced.Polymorphic
com.hp.hpl.jena.enhanced.EnhGraph
com.hp.hpl.jena.rdf.model.impl.ModelCom
com.hp.hpl.jena.db.ModelRDB
A persistent relational database implemention of the RDF API.
This implementation of the RDF API stores all its data in a relational database.
To construct a persistent RDB Model, first load the jdbc connector for your database - in this example, mysql:
Class.forName("com.mysql.jdbc.Driver");
Then create a connection to the database:
IDBConnection conn = new DBConnection("jdbc:mysql://localhost/test", "test", "", "MySQL");
Now, using that connection, you can construct Models in the database:
Model m = ModelRDB.createModel(conn);
Nested Class Summary |
Nested classes inherited from class com.hp.hpl.jena.shared.PrefixMapping |
PrefixMapping.Factory, PrefixMapping.IllegalPrefixException, PrefixMapping.JenaLockedException |
Field Summary | |
protected GraphRDB |
m_graphRDB
|
Fields inherited from class com.hp.hpl.jena.rdf.model.impl.ModelCom |
mapAsStatement, modelReifier |
Fields inherited from class com.hp.hpl.jena.enhanced.EnhGraph |
graph |
Fields inherited from interface com.hp.hpl.jena.shared.PrefixMapping |
Standard |
Fields inherited from interface com.hp.hpl.jena.rdf.model.ModelLock |
READ, WRITE |
Constructor Summary | |
ModelRDB(GraphPersonality p,
GraphRDB graph)
A model which is stored persistently in a Relational DataBase Most applications should not call the constructor - use ModelRDB.createModel (to create a new model) or ModelRDB.open (to open an exising model). |
|
ModelRDB(IDBConnection dbcon)
Deprecated. Since Jena 2.0, this call is not recommended - in the short-term use ModelRDB.open or ModelRDB.createModel; in the longer-term use factory methods to construct persistent models. |
|
ModelRDB(IDBConnection dbcon,
String modelID)
Deprecated. Since Jena 2.0, this call is not recommended - in the short-term use ModelRDB.open or ModelRDB.createModel; in the longer-term use factory methods to construct persistent models. |
Method Summary | |
void |
clear()
Deprecated. Since Jena 2.0 this call is not recommended (it's name is misleading) - to clear an entire database use DBConnection.cleanDB, to remove just this Model use Model.remove(). |
void |
close()
Close the Model and free up resources held. |
static ModelRDB |
create(IDBConnection dbcon,
String databaseType)
Deprecated. Since Jena 2.0 this call is no longer needed - it is preferable to specify the database type when constructing the DBConnection. Then use the call ModelRDB.createModel(IDBConnection) |
static ModelRDB |
create(IDBConnection dbcon,
String layoutType,
String databaseType)
Deprecated. Since Jena 2.0 this call is no longer needed - it is preferable to specify the database type when constructing the DBConnection and to modify the layout by using the properties in the DBConnection. Then use the call ModelRDB.createModel(IDBConnection) |
static ModelRDB |
createModel(IDBConnection dbcon)
Create a new default model on an existing database. |
static ModelRDB |
createModel(IDBConnection dbcon,
Model modelProperties)
Create a new model on an existing database. |
static ModelRDB |
createModel(IDBConnection dbcon,
String name)
Create a new model on an existing database. |
static ModelRDB |
createModel(IDBConnection dbcon,
String name,
Model modelProperties)
Create a new model on an existing database. |
static void |
deleteModel(IDBConnection dbcon,
String name)
Deprecated. Since Jena 2.0, to remove a model use the ModelRDB.remove() |
Model |
getComponent(Resource res,
Model buffer)
|
IDBConnection |
getConnection()
A convenience function to return the connection |
static Model |
getDefaultModelProperties(IDBConnection dbcon)
Retrieve a default set of model customization properties The returned default set of properties is suitable for use in a call to ModelRDB.create(..., modelProperties); |
boolean |
getDoDuplicateCheck()
Get the value of DoDuplicateCheck |
boolean |
getDoFastpath()
Get the value of DoFastpath. |
int |
getGraphID()
|
Model |
getModelProperties()
Returns a Jena Model containing model-specific properties. |
String |
getName()
|
boolean |
getQueryFullReified()
Get the value of QueryFullReified. |
boolean |
getQueryOnlyAsserted()
Get the value of QueryOnlyAsserted. |
boolean |
getQueryOnlyReified()
Get the value of QueryOnlyReified. |
boolean |
hasComponent(Resource res)
|
static ExtendedIterator |
listModels(IDBConnection dbcon)
List the names of all models stored in the database |
Model |
loadAll()
Deprecated. Since Jena 2.0, this call is not recommended. Instead use the soon-to-be-released bulk-load functions. |
static ModelRDB |
open(IDBConnection dbcon)
Open the default model from an existing rdf database. |
static ModelRDB |
open(IDBConnection dbcon,
String name)
Open an existing rdf database. |
void |
remove()
Remove all traces of this particular Model from the database. |
void |
removeComponent(Resource res)
|
void |
setDoDuplicateCheck(boolean bool)
Set the value of DoDuplicateCheck. |
void |
setDoFastpath(boolean val)
Set the value of DoFastpath. |
void |
setQueryFullReified(boolean opt)
Set the value of QueryFullReified. |
void |
setQueryOnlyAsserted(boolean opt)
Set the value of QueryOnlyAsserted. |
void |
setQueryOnlyReified(boolean opt)
Set the value of QueryOnlyReified. |
Methods inherited from class com.hp.hpl.jena.enhanced.EnhGraph |
asGraph, canSupport, convertTo, equals, getNodeAs, getNodeCacheControl, getPersonality, hashCode, isIsomorphicWith, isValid, setNodeCache |
Methods inherited from class com.hp.hpl.jena.enhanced.Polymorphic |
addView, already, asInternal, supports |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface com.hp.hpl.jena.rdf.model.RDFReaderF |
getReader, getReader, setReaderClassName |
Methods inherited from interface com.hp.hpl.jena.rdf.model.RDFWriterF |
getWriter, getWriter, setWriterClassName |
Methods inherited from interface com.hp.hpl.jena.shared.PrefixMapping |
expandPrefix, getNsPrefixMap, getNsPrefixURI, getNsURIPrefix, lock, setNsPrefix, setNsPrefixes, setNsPrefixes, usePrefix |
Methods inherited from interface com.hp.hpl.jena.rdf.model.ModelLock |
enterCriticalSection, leaveCriticalSection |
Field Detail |
protected GraphRDB m_graphRDB
Constructor Detail |
public ModelRDB(IDBConnection dbcon) throws RDFRDBException
dbcon
- a Connection specifying the database connectionpublic ModelRDB(IDBConnection dbcon, String modelID) throws RDFRDBException
dbcon
- a Connection specifying the database connectionmodelID
- is the identifier of an RDF model within the database.
The modelID "DEFAULT" is reserved and may not be used for user models.public ModelRDB(GraphPersonality p, GraphRDB graph) throws RDFRDBException
p
- the GraphPersonality of the resulting Modelgraph
- a GraphRDB to be exposed through the model interfaceMethod Detail |
public String getName()
public int getGraphID()
public boolean hasComponent(Resource res)
public Model getComponent(Resource res, Model buffer)
public void removeComponent(Resource res)
public static ModelRDB open(IDBConnection dbcon) throws RDFRDBException
dbcon
- an IDBConnection specifying the database connection
RDFRDBException
public static ModelRDB open(IDBConnection dbcon, String name) throws RDFRDBException
dbcon
- a IDBConnection specifying the database connectionname
- the name of the RDF model to open
RDFRDBException
public static ModelRDB createModel(IDBConnection dbcon) throws RDFRDBException
dbcon
- a DBConnection specifying the database connection
RDFRDBException
public static ModelRDB createModel(IDBConnection dbcon, Model modelProperties) throws RDFRDBException
Use the properties to optionally customize the model - this won't change the results you see when using the model interface, but it may alter the speed with which you get them or the space required by the underlying database.
The properties must form a complete and consistent set. The easist way to get a complete and consistent set is to call getDefaultModelProperties, modify it, and then use that as an argument in the call.
dbcon
- a DBConnection specifying the database connectionmodelProperties
- a Model containing customization properties
RDFRDBException
public static ModelRDB createModel(IDBConnection dbcon, String name) throws RDFRDBException
dbcon
- a DBConnectionI specifying the database connectionname
- the name to give the newly created model.
The name "DEFAULT" is reserved and may not be used for user models.
RDFRDBException
public static ModelRDB createModel(IDBConnection dbcon, String name, Model modelProperties) throws RDFRDBException
Use the properties to optionally customize the model - this won't change the results you see when using the model interface, but it may alter the speed with which you get them or the space required by the underlying database.
The properties must form a complete and consistent set. The easist way to get a complete and consistent set is to call getDefaultModelProperties, modify it, and then use that as an argument in the call.
dbcon
- a DBConnection specifying the database connectionname
- the name to give the newly created model.
The name "DEFAULT" is reserved and may not be used for user models.modelProperties
- a Model containing customization properties
RDFRDBException
public static ModelRDB create(IDBConnection dbcon, String layoutType, String databaseType) throws RDFRDBException
The appropriate RDF-RDB driver to use is assumed to be the class Driver
dbcon
- a DBConnection specifying the database connectionlayoutType
- the name of the layout style to use. Currently one of:
"Generic", "Hash", "MMGeneric", "MMHash", "Proc", "ThinProc".databaseType
- the name of the database type. Currently one of:
"Interbase" "Postgresql" "Mysql" "Oracle". This may seem a little redundant
given that the jdbc uri implicitly contains this information but there is no
standard way of extracting this (esp. if the user connects via a bridge).
RDFRDBException
public static ModelRDB create(IDBConnection dbcon, String databaseType) throws RDFRDBException
Uses a default layout format which is able to support multiple models in a single database.
dbcon
- a DBConnectionI specifying the database connectiondatabaseType
- the name of the database type. Currently one of:
"Interbase" "Postgresql" "Mysql" "Oracle". This may seem a little redundant
given that the jdbc uri implicitly contains this information but there is no
standard way of extracting this (esp. if the user connects via a bridge).
RDFRDBException
public Model getModelProperties()
public static Model getDefaultModelProperties(IDBConnection dbcon)
dbcon
- a DBConnectionI specifying the database connection
public static ExtendedIterator listModels(IDBConnection dbcon) throws RDFRDBException
RDFRDBException
public void close()
Not all implementations of Model require this method to be called. But some do, so in general its best to call it when done with the object, rather than leave it to the finalizer.
close
in interface Model
public void remove() throws RDFRDBException
RDFRDBException
public IDBConnection getConnection()
public void clear() throws RDFRDBException
RDFRDBException
public static void deleteModel(IDBConnection dbcon, String name) throws RDFRDBException
dbcon
- a DBConnectionI specifying the database connectionname
- the name to give the newly created model
RDFRDBException
public Model loadAll()
public boolean getDoDuplicateCheck()
public void setDoDuplicateCheck(boolean bool)
bool
- booleanpublic void setDoFastpath(boolean val)
val
- booleanpublic boolean getDoFastpath()
public void setQueryOnlyAsserted(boolean opt)
opt
- booleanpublic boolean getQueryOnlyAsserted()
public void setQueryOnlyReified(boolean opt)
opt
- booleanpublic boolean getQueryOnlyReified()
public void setQueryFullReified(boolean opt)
opt
- booleanpublic boolean getQueryFullReified()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |