| java.lang.Object org.apache.derby.impl.io.BaseStorageFactory
All known Subclasses: org.apache.derby.impl.io.CPStorageFactory, org.apache.derby.impl.io.DirStorageFactory, org.apache.derby.impl.io.URLStorageFactory, org.apache.derby.impl.io.JarStorageFactory,
BaseStorageFactory | abstract class BaseStorageFactory implements StorageFactory(Code) | | This class provides a base for implementations of the StorageFactory interface. It is used by the
database engine to access persistent data and transaction logs under the directory (default) subsubprotocol.
|
Constructor Summary | |
| BaseStorageFactory() Most of the initialization is done in the init method. |
separatedDataDirectory | protected String separatedDataDirectory(Code) | | |
BaseStorageFactory | BaseStorageFactory()(Code) | | Most of the initialization is done in the init method.
|
getCanonicalName | public String getCanonicalName() throws IOException(Code) | | Get the canonical name of the database. This is a name that uniquely identifies it. It is system dependent.
The normal, disk based implementation uses method java.io.File.getCanonicalPath on the directory holding the
database to construct the canonical name.
the canonical name exception: IOException - if an IO error occurred during the construction of the name. |
getSeparator | public char getSeparator()(Code) | | Get the pathname separator character used by the StorageFile implementation.
the pathname separator character. (Normally '/' or '\'). |
getStorageFactoryVersion | public int getStorageFactoryVersion()(Code) | | |
getTempDir | public StorageFile getTempDir()(Code) | | Get the abstract name of the directory that holds temporary files.
a directory name |
init | public void init(String home, String databaseName, String tempDirName, String uniqueName) throws IOException(Code) | | Classes implementing the StorageFactory interface must have a null
constructor. This method is called when the database is booted up to
initialize the class. It should perform all actions necessary to start the
basic storage, such as creating a temporary file directory.
The init method will be called once, before any other method is called, and will not
be called again.
Parameters: home - 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 classpathstorage factory ignores it. Parameters: 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 containingthe databases. Parameters: tempDirName - The name of the temporary file directory set in properties. If null then a defaultdirectory should be used. Each database should get a separate temporary filedirectory within this one to avoid collisions. Parameters: uniqueName - A unique name that can be used to create the temporary file directory for this database. exception: IOException - on an error (unexpected). |
isFast | public boolean isFast()(Code) | | This method is used to determine whether the storage is fast (RAM based) or slow (disk based).
It may be used by the database engine to determine the default size of the page cache.
true if the storage is fast, false if it is slow. |
isReadOnlyDatabase | public boolean isReadOnlyDatabase()(Code) | | |
newPersistentFile | abstract StorageFile newPersistentFile(String path)(Code) | | Construct a persistent StorageFile from a path name.
Parameters: path - The path name of the file. Guaranteed not to be in the temporary file directory. If nullthen the database directory should be returned. A corresponding StorageFile object |
newPersistentFile | abstract StorageFile newPersistentFile(String directoryName, String fileName)(Code) | | Construct a persistent StorageFile from a directory and path name.
Parameters: directoryName - The path name of the directory. Guaranteed not to be in the temporary file directory.Guaranteed not to be null Parameters: fileName - The name of the file within the directory. Guaranteed not to be null. A corresponding StorageFile object |
newPersistentFile | abstract StorageFile newPersistentFile(StorageFile directoryName, String fileName)(Code) | | Construct a persistent StorageFile from a directory and path name.
Parameters: directoryName - The path name of the directory. Guaranteed not to be to be null. Guaranteed to becreated by a call to one of the newPersistentFile methods. Parameters: fileName - The name of the file within the directory. Guaranteed not to be null. A corresponding StorageFile object |
newStorageFile | public StorageFile newStorageFile(String path)(Code) | | Construct a StorageFile from a path name.
Parameters: path - The path name of the file A corresponding StorageFile object |
newStorageFile | public StorageFile newStorageFile(String directoryName, String fileName)(Code) | | Construct a StorageFile from a directory and file name.
Parameters: directoryName - The directory part of the path name. Parameters: fileName - The name of the file within the directory. A corresponding StorageFile object |
newStorageFile | public StorageFile newStorageFile(StorageFile directoryName, String fileName)(Code) | | Construct a StorageFile from a directory and file name.
Parameters: directoryName - The directory part of the path name. Parameters: fileName - The name of the file within the directory. A corresponding StorageFile object |
shutdown | public void shutdown()(Code) | | |
supportsRandomAccess | public boolean supportsRandomAccess()(Code) | | Determine whether the storage supports random access. If random access is not supported then
it will only be accessed using InputStreams and OutputStreams (if the database is writable).
true if the storage supports random access, false if it is writable. |
|
|