public class JdbcCoordinatorImpl extends Object implements JdbcCoordinator
JdbcCoordinator
IMPL NOTE : Custom serialization handling!Constructor and Description |
---|
JdbcCoordinatorImpl(Connection userSuppliedConnection,
TransactionCoordinator transactionCoordinator)
Constructs a JdbcCoordinatorImpl
|
JdbcCoordinatorImpl(LogicalConnectionImpl logicalConnection,
TransactionCoordinator transactionCoordinator)
Constructs a JdbcCoordinatorImpl
|
Modifier and Type | Method and Description |
---|---|
void |
abortBatch()
Abort the currently managed batch (if any)
|
void |
afterDeserialize(TransactionCoordinatorImpl transactionCoordinator)
Callback after deserialization from Session is done
|
void |
afterStatementExecution()
Used to signify that a statement has completed execution which may
indicate that this logical connection need to perform an
aggressive release of its physical connection.
|
void |
afterTransaction()
Signals the end of transaction.
|
protected BatchBuilder |
batchBuilder() |
void |
cancelLastQuery()
Attempt to cancel the last query sent to the JDBC driver.
|
Connection |
close()
Close this coordinator and release and resources.
|
protected void |
close(ResultSet resultSet) |
protected void |
close(Statement statement) |
protected void |
closeAll(Set<ResultSet> resultSets) |
<T> T |
coordinateWork(WorkExecutorVisitable<T> work)
Perform the requested work handling exceptions, coordinating and handling return processing.
|
static JdbcCoordinatorImpl |
deserialize(ObjectInputStream ois,
TransactionContext transactionContext)
JDK deserialization hook
|
int |
determineRemainingTransactionTimeOutPeriod()
Calculate the amount of time, in seconds, still remaining before transaction timeout occurs.
|
void |
disableReleases()
Disable connection releases
|
void |
enableReleases()
Enable connection releases
|
void |
executeBatch()
Execute the currently managed batch (if any)
|
void |
flushBeginning()
Callback to let us know that a flush is beginning.
|
void |
flushEnding()
Callback to let us know that a flush is ending.
|
Batch |
getBatch(BatchKey key)
Get a batch instance.
|
LogicalConnectionImplementor |
getLogicalConnection()
Retrieves the logical connection associated with this JDBC coordinator.
|
ResultSetReturn |
getResultSetReturn()
Obtain the resultset extractor associated with this JDBC coordinator.
|
StatementPreparer |
getStatementPreparer()
Obtain the statement preparer associated with this JDBC coordinator.
|
TransactionCoordinator |
getTransactionCoordinator()
Retrieve the transaction coordinator associated with this JDBC coordinator.
|
boolean |
hasRegisteredResources()
Does this registry currently have any registered resources?
|
boolean |
isReadyForSerialization()
Can this coordinator be serialized?
|
void |
register(ResultSet resultSet,
Statement statement)
Register a JDBC result set.
|
void |
register(Statement statement)
Register a JDBC statement.
|
void |
registerLastQuery(Statement statement)
Register a query statement as being able to be cancelled.
|
void |
release(ResultSet resultSet,
Statement statement)
Release a previously registered result set.
|
void |
release(Statement statement)
Release a previously registered statement.
|
void |
releaseResources()
Release all registered resources.
|
void |
serialize(ObjectOutputStream oos)
JDK serialization hook
|
protected SessionFactoryImplementor |
sessionFactory() |
void |
setTransactionTimeOut(int seconds)
Set the effective transaction timeout period for the current transaction, in seconds.
|
SqlExceptionHelper |
sqlExceptionHelper()
Access to the SqlExceptionHelper
|
protected TransactionEnvironment |
transactionEnvironment() |
public JdbcCoordinatorImpl(Connection userSuppliedConnection, TransactionCoordinator transactionCoordinator)
userSuppliedConnection
- The user supplied connection (may be null)transactionCoordinator
- The transaction coordinatorpublic JdbcCoordinatorImpl(LogicalConnectionImpl logicalConnection, TransactionCoordinator transactionCoordinator)
logicalConnection
- The logical JDBC connectiontransactionCoordinator
- The transaction coordinatorpublic TransactionCoordinator getTransactionCoordinator()
JdbcCoordinator
getTransactionCoordinator
in interface JdbcCoordinator
public LogicalConnectionImplementor getLogicalConnection()
JdbcCoordinator
getLogicalConnection
in interface JdbcCoordinator
protected TransactionEnvironment transactionEnvironment()
protected SessionFactoryImplementor sessionFactory()
protected BatchBuilder batchBuilder()
public SqlExceptionHelper sqlExceptionHelper()
public void flushBeginning()
JdbcCoordinator
JdbcCoordinator.flushEnding()
flushBeginning
in interface JdbcCoordinator
public void flushEnding()
JdbcCoordinator
flushEnding
in interface JdbcCoordinator
public Connection close()
JdbcCoordinator
close
in interface JdbcCoordinator
Connection
associated with the managed logical connection
LogicalConnection.close()
public Batch getBatch(BatchKey key)
JdbcCoordinator
getBatch
in interface JdbcCoordinator
key
- The unique batch key.public void executeBatch()
JdbcCoordinator
executeBatch
in interface JdbcCoordinator
public void abortBatch()
JdbcCoordinator
abortBatch
in interface JdbcCoordinator
public StatementPreparer getStatementPreparer()
JdbcCoordinator
getStatementPreparer
in interface JdbcCoordinator
public ResultSetReturn getResultSetReturn()
JdbcCoordinator
getResultSetReturn
in interface JdbcCoordinator
public void setTransactionTimeOut(int seconds)
JdbcCoordinator
setTransactionTimeOut
in interface JdbcCoordinator
seconds
- The number of seconds before a time out should occur.public int determineRemainingTransactionTimeOutPeriod()
JdbcCoordinator
determineRemainingTransactionTimeOutPeriod
in interface JdbcCoordinator
public void afterStatementExecution()
JdbcCoordinator
afterStatementExecution
in interface JdbcCoordinator
public void afterTransaction()
JdbcCoordinator
afterTransaction
in interface JdbcCoordinator
public <T> T coordinateWork(WorkExecutorVisitable<T> work)
JdbcCoordinator
coordinateWork
in interface JdbcCoordinator
T
- The result type.work
- The work to be performed.public boolean isReadyForSerialization()
JdbcCoordinator
isReadyForSerialization
in interface JdbcCoordinator
true
indicates the coordinator can be serialized.public void serialize(ObjectOutputStream oos) throws IOException
oos
- The stream into which to write our stateIOException
- Trouble accessing the streampublic static JdbcCoordinatorImpl deserialize(ObjectInputStream ois, TransactionContext transactionContext) throws IOException, ClassNotFoundException
ois
- The stream into which to write our statetransactionContext
- The transaction context which owns the JdbcCoordinatorImpl to be deserialized.IOException
- Trouble accessing the streamClassNotFoundException
- Trouble reading the streampublic void afterDeserialize(TransactionCoordinatorImpl transactionCoordinator)
transactionCoordinator
- The transaction coordinatorpublic void register(Statement statement)
JdbcCoordinator
register
in interface JdbcCoordinator
statement
- The statement to register.public void registerLastQuery(Statement statement)
JdbcCoordinator
registerLastQuery
in interface JdbcCoordinator
statement
- The cancel-able query statement.public void cancelLastQuery()
JdbcCoordinator
cancelLastQuery
in interface JdbcCoordinator
public void release(Statement statement)
JdbcCoordinator
release
in interface JdbcCoordinator
statement
- The statement to release.public void register(ResultSet resultSet, Statement statement)
JdbcCoordinator
ResultSet.getStatement()
does not return original Statement
object.register
in interface JdbcCoordinator
resultSet
- The result set to register.statement
- Statement from which ResultSet
has been generated.public void release(ResultSet resultSet, Statement statement)
JdbcCoordinator
release
in interface JdbcCoordinator
resultSet
- The result set to release.statement
- Statement from which ResultSet
has been generated.public boolean hasRegisteredResources()
JdbcCoordinator
hasRegisteredResources
in interface JdbcCoordinator
public void releaseResources()
JdbcCoordinator
releaseResources
in interface JdbcCoordinator
public void enableReleases()
JdbcCoordinator
enableReleases
in interface JdbcCoordinator
public void disableReleases()
JdbcCoordinator
disableReleases
in interface JdbcCoordinator
protected void close(Statement statement)
protected void close(ResultSet resultSet)
Copyright © 2001-2015 Red Hat, Inc. All Rights Reserved.