|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.derby.impl.io.BaseStorageFactory
org.apache.derby.impl.io.DirStorageFactory
This class provides a disk based implementation of the StorageFactory interface. It is used by the database engine to access persistent data and transaction logs under the directory (default) subsubprotocol.
| Field Summary | |
protected java.lang.String |
canonicalName
|
protected java.lang.String |
dataDirectory
|
(package private) java.lang.String |
home
|
protected java.lang.String |
separatedDataDirectory
|
protected StorageFile |
tempDir
|
protected java.lang.String |
tempDirPath
|
protected java.lang.String |
uniqueName
|
| Fields inherited from interface org.apache.derby.io.StorageFactory |
VERSION_NUMBER |
| Constructor Summary | |
DirStorageFactory()
|
|
| Method Summary | |
(package private) void |
createTempDir()
|
(package private) void |
doInit()
|
java.lang.String |
getCanonicalName()
Get the canonical name of the database. |
char |
getSeparator()
Get the pathname separator character used by the StorageFile implementation. |
int |
getStorageFactoryVersion()
|
StorageFile |
getTempDir()
Get the abstract name of the directory that holds temporary files. |
void |
init(java.lang.String home,
java.lang.String databaseName,
java.lang.String tempDirName,
java.lang.String uniqueName)
Classes implementing the StorageFactory interface must have a null constructor. |
boolean |
isFast()
This method is used to determine whether the storage is fast (RAM based) or slow (disk based). |
boolean |
isReadOnlyDatabase()
Determine whether the database is read only. |
(package private) StorageFile |
newPersistentFile(StorageFile directoryName,
java.lang.String fileName)
Construct a persistent StorageFile from a directory and path name. |
(package private) StorageFile |
newPersistentFile(java.lang.String path)
Construct a persistent StorageFile from a path name. |
(package private) StorageFile |
newPersistentFile(java.lang.String directoryName,
java.lang.String fileName)
Construct a persistent StorageFile from a directory and path name. |
StorageFile |
newStorageFile(StorageFile directoryName,
java.lang.String fileName)
Construct a StorageFile from a directory and file name. |
StorageFile |
newStorageFile(java.lang.String path)
Construct a StorageFile from a path name. |
StorageFile |
newStorageFile(java.lang.String directoryName,
java.lang.String fileName)
Construct a StorageFile from a directory and file name. |
void |
shutdown()
The shutdown method is called during the normal shutdown of the database. |
boolean |
supportsRandomAccess()
Determine whether the storage supports random access. |
boolean |
supportsRws()
This method tests whether the "rws" and "rwd" modes are implemented. |
void |
sync(java.io.OutputStream stream,
boolean metaData)
Force the data of an output stream out to the underlying storage. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.apache.derby.io.StorageFactory |
getCanonicalName, getSeparator, getStorageFactoryVersion, getTempDir, init, isFast, shutdown |
| Field Detail |
java.lang.String home
protected StorageFile tempDir
protected java.lang.String tempDirPath
protected java.lang.String dataDirectory
protected java.lang.String separatedDataDirectory
protected java.lang.String uniqueName
protected java.lang.String canonicalName
| Constructor Detail |
public DirStorageFactory()
| Method Detail |
public final StorageFile newStorageFile(java.lang.String path)
newStorageFile in interface StorageFactorynewStorageFile in class BaseStorageFactorypath - The path name of the file
public final StorageFile newStorageFile(java.lang.String directoryName,
java.lang.String fileName)
newStorageFile in interface StorageFactorynewStorageFile in class BaseStorageFactorydirectoryName - The directory part of the path name.fileName - The name of the file within the directory.
public final StorageFile newStorageFile(StorageFile directoryName,
java.lang.String fileName)
newStorageFile in interface StorageFactorynewStorageFile in class BaseStorageFactorydirectoryName - The directory part of the path name.fileName - The name of the file within the directory.
StorageFile newPersistentFile(java.lang.String path)
newPersistentFile in class BaseStorageFactorypath - The path name of the file. Guaranteed not to be in the temporary file directory. If null
then the database directory should be returned.
StorageFile newPersistentFile(java.lang.String directoryName,
java.lang.String fileName)
newPersistentFile in class BaseStorageFactoryfileName - The name of the file within the directory. Guaranteed not to be null.
StorageFile newPersistentFile(StorageFile directoryName,
java.lang.String fileName)
newPersistentFile in class BaseStorageFactoryfileName - The name of the file within the directory. Guaranteed not to be null.
public void sync(java.io.OutputStream stream,
boolean metaData)
throws java.io.IOException,
java.io.SyncFailedException
sync in interface WritableStorageFactorystream - The stream to be synchronized.metaData - If true then this method must force both changes to the file's
contents and metadata to be written to storage; if false, it need only force file content changes
to be written. The implementation is allowed to ignore this parameter and always force out
metadata changes.
java.io.IOException - if an I/O error occurs.
java.io.SyncFailedException - Thrown when the buffers cannot be flushed,
or because the system cannot guarantee that all the buffers have been
synchronized with physical media.public boolean supportsRws()
supportsRws in interface WritableStorageFactorypublic boolean isReadOnlyDatabase()
StorageFactory
isReadOnlyDatabase in interface StorageFactoryisReadOnlyDatabase in class BaseStorageFactorypublic boolean supportsRandomAccess()
supportsRandomAccess in interface StorageFactorysupportsRandomAccess in class BaseStorageFactory
void doInit()
throws java.io.IOException
doInit in class BaseStorageFactoryjava.io.IOException
public void init(java.lang.String home,
java.lang.String databaseName,
java.lang.String tempDirName,
java.lang.String uniqueName)
throws java.io.IOException
init in interface StorageFactoryhome - The name of the directory containing the database. It comes from the system.home system property.
It may be null. A storage factory may decide to ignore this parameter. (For instance the classpath
storage factory ignores it.databaseName - The name of the database (directory). All relative pathnames are relative to this directory.
If null then the storage factory will only be used to deal with the directory containing
the databases.tempDirName - The name of the temporary file directory set in properties. If null then a default
directory should be used. Each database should get a separate temporary file
directory within this one to avoid collisions.uniqueName - A unique name that can be used to create the temporary file directory for this database.
java.io.IOException - on an error (unexpected).public void shutdown()
StorageFactory
shutdown in interface StorageFactory
public java.lang.String getCanonicalName()
throws java.io.IOException
getCanonicalName in interface StorageFactoryjava.io.IOException - if an IO error occurred during the construction of the name.public char getSeparator()
getSeparator in interface StorageFactorypublic StorageFile getTempDir()
getTempDir in interface StorageFactorypublic boolean isFast()
isFast in interface StorageFactory
void createTempDir()
throws java.io.IOException
java.io.IOExceptionpublic int getStorageFactoryVersion()
getStorageFactoryVersion in interface StorageFactory
|
Built on Tue 2006-10-10 19:23:47+0200, from revision exported | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||