org.openrdf.sail.helpers
Class SailWrapper

java.lang.Object
  extended by org.openrdf.sail.helpers.SailWrapper
All Implemented Interfaces:
Sail, StackableSail
Direct Known Subclasses:
NotifyingSailWrapper

public class SailWrapper
extends Object
implements StackableSail

An implementation of the StackableSail interface that wraps another Sail object and forwards any relevant calls to the wrapped Sail.

Author:
Arjohn Kampman

Constructor Summary
SailWrapper()
          Creates a new SailWrapper.
SailWrapper(Sail baseSail)
          Creates a new SailWrapper that wraps the supplied Sail.
 
Method Summary
 Sail getBaseSail()
          Gets the base Sail that this Sail works on top of.
 SailConnection getConnection()
          Opens a connection on the Sail which can be used to query and update data.
 File getDataDir()
          Gets the Sail's data directory.
 ValueFactory getValueFactory()
          Gets a ValueFactory object that can be used to create URI-, blank node-, literal- and statement objects.
 void initialize()
          Initializes the Sail.
 boolean isWritable()
          Checks whether this Sail object is writable, i.e.
 void setBaseSail(Sail baseSail)
          Sets the base Sail that this Sail will work on top of.
 void setDataDir(File dataDir)
          Sets the data directory for the Sail.
 void shutDown()
          Shuts down the Sail, giving it the opportunity to synchronize any stale data.
protected  void verifyBaseSailSet()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SailWrapper

public SailWrapper()
Creates a new SailWrapper. The base Sail for the created SailWrapper can be set later using setBaseSail(org.openrdf.sail.Sail).


SailWrapper

public SailWrapper(Sail baseSail)
Creates a new SailWrapper that wraps the supplied Sail.

Method Detail

setBaseSail

public void setBaseSail(Sail baseSail)
Description copied from interface: StackableSail
Sets the base Sail that this Sail will work on top of. This method will be called before the initialize() method is called.

Specified by:
setBaseSail in interface StackableSail

getBaseSail

public Sail getBaseSail()
Description copied from interface: StackableSail
Gets the base Sail that this Sail works on top of.

Specified by:
getBaseSail in interface StackableSail

verifyBaseSailSet

protected void verifyBaseSailSet()

getDataDir

public File getDataDir()
Description copied from interface: Sail
Gets the Sail's data directory.

Specified by:
getDataDir in interface Sail
See Also:
Sail.setDataDir(File)

setDataDir

public void setDataDir(File dataDir)
Description copied from interface: Sail
Sets the data directory for the Sail. The Sail can use this directory for storage of data, parameters, etc. This directory must be set before the Sail is initialized.

Specified by:
setDataDir in interface Sail

initialize

public void initialize()
                throws SailException
Description copied from interface: Sail
Initializes the Sail. Care should be taken that required initialization parameters have been set before this method is called. Please consult the specific Sail implementation for information about the relevant parameters.

Specified by:
initialize in interface Sail
Throws:
SailException - If the Sail could not be initialized.

shutDown

public void shutDown()
              throws SailException
Description copied from interface: Sail
Shuts down the Sail, giving it the opportunity to synchronize any stale data. Care should be taken that all initialized Sails are being shut down before an application exits to avoid potential loss of data. Once shut down, a Sail can no longer be used until it is re-initialized.

Specified by:
shutDown in interface Sail
Throws:
SailException - If the Sail object encountered an error or unexpected situation internally.

isWritable

public boolean isWritable()
                   throws SailException
Description copied from interface: Sail
Checks whether this Sail object is writable, i.e. if the data contained in this Sail object can be changed.

Specified by:
isWritable in interface Sail
Throws:
SailException

getConnection

public SailConnection getConnection()
                             throws SailException
Description copied from interface: Sail
Opens a connection on the Sail which can be used to query and update data. Depending on how the implementation handles concurrent access, a call to this method might block when there is another open connection on this Sail.

Specified by:
getConnection in interface Sail
Throws:
SailException - If no transaction could be started, for example because the Sail is not writable.

getValueFactory

public ValueFactory getValueFactory()
Description copied from interface: Sail
Gets a ValueFactory object that can be used to create URI-, blank node-, literal- and statement objects.

Specified by:
getValueFactory in interface Sail
Returns:
a ValueFactory object for this Sail object.


Copyright © 2001-2010 Aduna. All Rights Reserved.