public class SessionRemote extends Object implements DataHandler
Modifier and Type | Field and Description |
---|---|
static int |
CHANGE_ID |
static int |
COMMAND_CLOSE |
static int |
COMMAND_COMMIT |
static int |
COMMAND_EXECUTE_QUERY |
static int |
COMMAND_EXECUTE_UPDATE |
static int |
COMMAND_GET_META_DATA |
static int |
RESULT_CLOSE |
static int |
RESULT_FETCH_ROWS |
static int |
RESULT_RESET |
static int |
SESSION_CANCEL_STATEMENT |
static int |
SESSION_CHECK_KEY |
static int |
SESSION_CLOSE |
static int |
SESSION_PREPARE |
static int |
SESSION_PREPARE_READ_PARAMS |
static int |
SESSION_SET_AUTOCOMMIT |
static int |
SESSION_SET_ID |
protected ArrayList<String> |
sessionState |
protected boolean |
sessionStateChanged |
static int |
STATUS_CLOSED |
static int |
STATUS_ERROR |
static int |
STATUS_OK |
static int |
STATUS_OK_STATE_CHANGED |
Constructor and Description |
---|
SessionRemote(ConnectionInfo ci) |
Modifier and Type | Method and Description |
---|---|
void |
afterWriting()
Called after writing has ended.
|
void |
autoCommitIfCluster()
Calls COMMIT if the session is in cluster mode.
|
void |
cancel()
Cancel the current or next command (called when closing a connection).
|
void |
cancelStatement(int id)
Cancel the statement with the given id.
|
void |
checkClosed()
Check if this session is closed and throws an exception if so.
|
void |
checkPowerOff()
Check if the simulated power failure occurred.
|
void |
checkWritingAllowed()
Check if writing is allowed.
|
void |
close()
Roll back pending transactions and close the session.
|
SessionInterface |
connectEmbeddedOrServer(boolean openNew)
Open a new (remote or embedded) session.
|
void |
done(Transfer transfer)
Called to flush the output after data has been sent to the server and
just before receiving data.
|
void |
freeUpDiskSpace()
Free up disk space if possible.
|
boolean |
getAutoCommit()
Check if this session is in auto-commit mode.
|
int |
getCurrentId() |
String |
getDatabasePath()
Get the database path.
|
DataHandler |
getDataHandler()
Get the data handler object.
|
int |
getLastReconnect() |
String |
getLobCompressionAlgorithm(int type)
Get the compression algorithm used for large objects.
|
Connection |
getLobConnection()
Get a database connection to be used for LOB access.
|
SmallLRUCache<String,String[]> |
getLobFileListCache()
Get the lob file list cache if it is used.
|
LobStorage |
getLobStorage()
Get the lob storage mechanism to use.
|
Object |
getLobSyncObject()
Get the synchronization object for lob operations.
|
int |
getMaxLengthInplaceLob()
Get the maximum length of a in-place large object
|
int |
getNextId() |
int |
getPowerOffCount()
Get the number of disk operations before power failure is simulated.
|
TempFileDeleter |
getTempFileDeleter()
Get the temp file deleter mechanism.
|
Trace |
getTrace()
Get the trace object
|
boolean |
isClosed()
Check if close was called.
|
boolean |
isClustered()
Returns true if the connection was opened in cluster mode.
|
boolean |
isReconnectNeeded(boolean write)
Check if the database changed and therefore reconnecting is required.
|
FileStore |
openFile(String name,
String mode,
boolean mustExist)
Open a file at the given location.
|
CommandInterface |
prepareCommand(String sql,
int fetchSize)
Parse a command and prepare it for execution.
|
void |
readSessionState()
Read the session state if necessary.
|
SessionInterface |
reconnect(boolean write)
Close the connection and open a new connection.
|
protected void |
recreateSessionState()
Re-create the session state using the stored sessionState list.
|
void |
removeServer(IOException e,
int i,
int count)
Remove a server from the list of cluster nodes and disables the cluster
mode.
|
void |
setAutoCommit(boolean autoCommit)
Set the auto-commit mode.
|
void |
setAutoCommitFromServer(boolean autoCommit) |
void |
setPowerOffCount(int count)
Set the number of disk operations before power failure is simulated.
|
void |
traceOperation(String operation,
int id)
Write the operation to the trace system if debug trace is enabled.
|
public static final int SESSION_PREPARE
public static final int SESSION_CLOSE
public static final int COMMAND_EXECUTE_QUERY
public static final int COMMAND_EXECUTE_UPDATE
public static final int COMMAND_CLOSE
public static final int RESULT_FETCH_ROWS
public static final int RESULT_RESET
public static final int RESULT_CLOSE
public static final int COMMAND_COMMIT
public static final int CHANGE_ID
public static final int COMMAND_GET_META_DATA
public static final int SESSION_PREPARE_READ_PARAMS
public static final int SESSION_SET_ID
public static final int SESSION_CANCEL_STATEMENT
public static final int SESSION_CHECK_KEY
public static final int SESSION_SET_AUTOCOMMIT
public static final int STATUS_ERROR
public static final int STATUS_OK
public static final int STATUS_CLOSED
public static final int STATUS_OK_STATE_CHANGED
protected boolean sessionStateChanged
public SessionRemote(ConnectionInfo ci)
public void cancel()
SessionInterface
cancel
in interface SessionInterface
public void cancelStatement(int id)
id
- the statement idpublic boolean getAutoCommit()
SessionInterface
getAutoCommit
in interface SessionInterface
public void setAutoCommit(boolean autoCommit)
SessionInterface
setAutoCommit
in interface SessionInterface
autoCommit
- the new valuepublic void setAutoCommitFromServer(boolean autoCommit)
public void autoCommitIfCluster()
public int getPowerOffCount()
SessionInterface
getPowerOffCount
in interface SessionInterface
public void setPowerOffCount(int count)
SessionInterface
setPowerOffCount
in interface SessionInterface
count
- the number of operationspublic SessionInterface connectEmbeddedOrServer(boolean openNew)
openNew
- whether to open a new session in any casepublic void removeServer(IOException e, int i, int count)
e
- the exception (used for debugging)i
- the index of the server to removecount
- the retry count indexpublic CommandInterface prepareCommand(String sql, int fetchSize)
SessionInterface
prepareCommand
in interface SessionInterface
sql
- the SQL statementfetchSize
- the number of rows to fetch in one steppublic void checkClosed()
DbException
- if the session is closedpublic void close()
SessionInterface
close
in interface Closeable
close
in interface AutoCloseable
close
in interface SessionInterface
public Trace getTrace()
SessionInterface
getTrace
in interface SessionInterface
public int getNextId()
public int getCurrentId()
public void done(Transfer transfer) throws IOException
transfer
- the transfer objectDbException
- if the server sent an exceptionIOException
- if there is a communication problem between client
and serverpublic boolean isClustered()
public boolean isClosed()
SessionInterface
isClosed
in interface SessionInterface
public void traceOperation(String operation, int id)
operation
- the operation performedid
- the id of the operationpublic void checkPowerOff()
DataHandler
checkPowerOff
in interface DataHandler
public void checkWritingAllowed()
DataHandler
checkWritingAllowed
in interface DataHandler
public void freeUpDiskSpace()
DataHandler
freeUpDiskSpace
in interface DataHandler
public String getDatabasePath()
DataHandler
getDatabasePath
in interface DataHandler
public String getLobCompressionAlgorithm(int type)
DataHandler
getLobCompressionAlgorithm
in interface DataHandler
type
- the data type (CLOB or BLOB)public int getMaxLengthInplaceLob()
DataHandler
getMaxLengthInplaceLob
in interface DataHandler
public FileStore openFile(String name, String mode, boolean mustExist)
DataHandler
openFile
in interface DataHandler
name
- the file namemode
- the modemustExist
- whether the file must already existpublic DataHandler getDataHandler()
SessionInterface
getDataHandler
in interface SessionInterface
public Object getLobSyncObject()
DataHandler
getLobSyncObject
in interface DataHandler
public SmallLRUCache<String,String[]> getLobFileListCache()
DataHandler
getLobFileListCache
in interface DataHandler
public int getLastReconnect()
public TempFileDeleter getTempFileDeleter()
DataHandler
getTempFileDeleter
in interface DataHandler
public boolean isReconnectNeeded(boolean write)
SessionInterface
isReconnectNeeded
in interface SessionInterface
write
- if the next operation may be writingpublic SessionInterface reconnect(boolean write)
SessionInterface
reconnect
in interface SessionInterface
write
- if the next operation may be writingpublic void afterWriting()
SessionInterface
afterWriting
in interface SessionInterface
public LobStorage getLobStorage()
DataHandler
getLobStorage
in interface DataHandler
public Connection getLobConnection()
DataHandler
getLobConnection
in interface DataHandler
protected void recreateSessionState()
public void readSessionState()
Copyright © 2012 JBoss by Red Hat. All Rights Reserved.