org.openrdf.repository
Interface Repository

All Known Subinterfaces:
DelegatingRepository, InterceptingRepository, NotifyingRepository
All Known Implementing Classes:
ContextAwareRepository, DatasetRepository, HTTPRepository, InterceptingRepositoryWrapper, NotifyingRepositoryWrapper, RepositoryBase, RepositoryWrapper, SailRepository, SPARQLRepository, SystemRepository

public interface Repository

A Sesame repository that contains RDF data that can be queried and updated. Access to the repository can be acquired by openening a connection to it. This connection can then be used to query and/or update the contents of the repository. Depending on the implementation of the repository, it may or may not support multiple concurrent connections.

Please note that a repository needs to be initialized before it can be used and that it should be shut down before it is discarded/garbage collected. Forgetting the latter can result in loss of data (depending on the Repository implementation)!

Author:
Arjohn Kampman

Method Summary
 RepositoryConnection getConnection()
          Opens a connection to this repository that can be used for querying and updating the contents of the repository.
 File getDataDir()
          Get the directory where data and logging for this repository is stored.
 ValueFactory getValueFactory()
          Gets a ValueFactory for this Repository.
 void initialize()
          Initializes this repository.
 boolean isInitialized()
          Indicates if the Repository has been initialized.
 boolean isWritable()
          Checks whether this repository is writable, i.e.
 void setDataDir(File dataDir)
          Set the directory where data and logging for this repository is stored.
 void shutDown()
          Shuts the repository down, releasing any resources that it keeps hold of.
 

Method Detail

setDataDir

void setDataDir(File dataDir)
Set the directory where data and logging for this repository is stored.

Parameters:
dataDir - the directory where data for this repository is stored

getDataDir

File getDataDir()
Get the directory where data and logging for this repository is stored.

Returns:
the directory where data for this repository is stored.

initialize

void initialize()
                throws RepositoryException
Initializes this repository. A repository needs to be initialized before it can be used.

Throws:
RepositoryException - If the initialization failed.

isInitialized

boolean isInitialized()
Indicates if the Repository has been initialized. Note that the initialization status may change if the Repository is shut down.

Returns:
true iff the repository has been initialized.

shutDown

void shutDown()
              throws RepositoryException
Shuts the repository down, releasing any resources that it keeps hold of. Once shut down, the repository can no longer be used until it is re-initialized.

Throws:
RepositoryException

isWritable

boolean isWritable()
                   throws RepositoryException
Checks whether this repository is writable, i.e. if the data contained in this repository can be changed. The writability of the repository is determined by the writability of the Sail that this repository operates on.

Throws:
RepositoryException

getConnection

RepositoryConnection getConnection()
                                   throws RepositoryException
Opens a connection to this repository that can be used for querying and updating the contents of the repository. Created connections need to be closed to make sure that any resources they keep hold of are released. The best way to do this is to use a try-finally-block as follows:
 Connection con = repository.getConnection();
 try {
        // perform operations on the connection
 }
 finally {
        con.close();
 }
 

Returns:
A connection that allows operations on this repository.
Throws:
RepositoryException - If something went wrong during the creation of the Connection.

getValueFactory

ValueFactory getValueFactory()
Gets a ValueFactory for this Repository.

Returns:
A repository-specific ValueFactory.


Copyright © 2001-2012 Aduna. All Rights Reserved.