|
||||||||||
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.JarStorageFactory
This class provides a Jar file based implementation of the StorageFactory interface. It is used by the database engine to access persistent data and transaction logs under the jar 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
|
(package private) java.util.zip.ZipFile |
zipData
|
Fields inherited from interface org.apache.derby.io.StorageFactory |
VERSION_NUMBER |
Constructor Summary | |
JarStorageFactory()
|
Method Summary | |
(package private) void |
createTempDir()
|
(package private) void |
doInit()
|
java.lang.String |
getCanonicalName()
Get the canonical name of the database. |
private java.io.File |
getJarFile(java.lang.String name)
|
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 StorageFile from a directory and file 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 StorageFile from a directory and file 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. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
java.util.zip.ZipFile zipData
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 JarStorageFactory()
Method Detail |
StorageFile newPersistentFile(java.lang.String path)
newPersistentFile
in class BaseStorageFactory
path
- The path name of the file
StorageFile newPersistentFile(java.lang.String directoryName, java.lang.String fileName)
newPersistentFile
in class BaseStorageFactory
directoryName
- The directory part of the path name. Must not be null, nor may it be in the temp dir.fileName
- The name of the file within the directory.
StorageFile newPersistentFile(StorageFile directoryName, java.lang.String fileName)
newPersistentFile
in class BaseStorageFactory
directoryName
- The directory part of the path name.fileName
- The name of the file within the directory.
void doInit() throws java.io.IOException
doInit
in class BaseStorageFactory
java.io.IOException
private java.io.File getJarFile(java.lang.String name)
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 StorageFactory
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 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 StorageFactory
java.io.IOException
- if an IO error occurred during the construction of the name.public StorageFile newStorageFile(java.lang.String path)
newStorageFile
in interface StorageFactory
path
- The path name of the file
public StorageFile newStorageFile(java.lang.String directoryName, java.lang.String fileName)
newStorageFile
in interface StorageFactory
directoryName
- The directory part of the path name.fileName
- The name of the file within the directory.
public StorageFile newStorageFile(StorageFile directoryName, java.lang.String fileName)
newStorageFile
in interface StorageFactory
directoryName
- The directory part of the path name.fileName
- The name of the file within the directory.
public char getSeparator()
getSeparator
in interface StorageFactory
public StorageFile getTempDir()
getTempDir
in interface StorageFactory
public boolean isFast()
isFast
in interface StorageFactory
public boolean isReadOnlyDatabase()
StorageFactory
isReadOnlyDatabase
in interface StorageFactory
public boolean supportsRandomAccess()
supportsRandomAccess
in interface StorageFactory
void createTempDir() throws java.io.IOException
java.io.IOException
public int getStorageFactoryVersion()
getStorageFactoryVersion
in interface StorageFactory
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |