org.h2.store
Interface DataHandler

All Known Implementing Classes:
Database, Recover, RunScriptCommand, ScriptCommand, SessionRemote, TestDataPage, TestFile, TestValueHashMap, TestValueMemory

public interface DataHandler

A data handler contains a number of callback methods. The most important implementing class is a database.


Method Summary
 void checkPowerOff()
          Check if the simulated power failure occurred.
 void checkWritingAllowed()
          Check if writing is allowed.
 java.lang.String getDatabasePath()
          Get the database path.
 JavaObjectSerializer getJavaObjectSerializer()
          Return the serializer to be used for java objects being stored in column of type OTHER.
 java.lang.String getLobCompressionAlgorithm(int type)
          Get the compression algorithm used for large objects.
 SmallLRUCache<java.lang.String,java.lang.String[]> getLobFileListCache()
          Get the lob file list cache if it is used.
 LobStorageInterface getLobStorage()
          Get the lob storage mechanism to use.
 java.lang.Object getLobSyncObject()
          Get the synchronization object for lob operations.
 int getMaxLengthInplaceLob()
          Get the maximum length of a in-place large object
 TempFileDeleter getTempFileDeleter()
          Get the temp file deleter mechanism.
 FileStore openFile(java.lang.String name, java.lang.String mode, boolean mustExist)
          Open a file at the given location.
 int readLob(long lobId, byte[] hmac, long offset, byte[] buff, int off, int length)
          Read from a lob.
 

Method Detail

getDatabasePath

java.lang.String getDatabasePath()
Get the database path.

Returns:
the database path

openFile

FileStore openFile(java.lang.String name,
                   java.lang.String mode,
                   boolean mustExist)
Open a file at the given location.

Parameters:
name - the file name
mode - the mode
mustExist - whether the file must already exist
Returns:
the file

checkPowerOff

void checkPowerOff()
                   throws DbException
Check if the simulated power failure occurred. This call will decrement the countdown.

Throws:
DbException - if the simulated power failure occurred

checkWritingAllowed

void checkWritingAllowed()
                         throws DbException
Check if writing is allowed.

Throws:
DbException - if it is not allowed

getMaxLengthInplaceLob

int getMaxLengthInplaceLob()
Get the maximum length of a in-place large object

Returns:
the maximum size

getLobCompressionAlgorithm

java.lang.String getLobCompressionAlgorithm(int type)
Get the compression algorithm used for large objects.

Parameters:
type - the data type (CLOB or BLOB)
Returns:
the compression algorithm, or null

getTempFileDeleter

TempFileDeleter getTempFileDeleter()
Get the temp file deleter mechanism.

Returns:
the temp file deleter

getLobSyncObject

java.lang.Object getLobSyncObject()
Get the synchronization object for lob operations.

Returns:
the synchronization object

getLobFileListCache

SmallLRUCache<java.lang.String,java.lang.String[]> getLobFileListCache()
Get the lob file list cache if it is used.

Returns:
the cache or null

getLobStorage

LobStorageInterface getLobStorage()
Get the lob storage mechanism to use.

Returns:
the lob storage mechanism

readLob

int readLob(long lobId,
            byte[] hmac,
            long offset,
            byte[] buff,
            int off,
            int length)
Read from a lob.

Parameters:
lobId - the lob id
hmac - the message authentication code
offset - the offset within the lob
buff - the target buffer
off - the offset within the target buffer
length - the number of bytes to read
Returns:
the number of bytes read

getJavaObjectSerializer

JavaObjectSerializer getJavaObjectSerializer()
Return the serializer to be used for java objects being stored in column of type OTHER.

Returns:
the serializer to be used for java objects being stored in column of type OTHER