public class LogicalConnectionImpl extends Object implements LogicalConnectionImplementor
LogicalConnection
implementation
IMPL NOTE : Custom serialization handling!Constructor and Description |
---|
LogicalConnectionImpl(Connection userSuppliedConnection,
ConnectionReleaseMode connectionReleaseMode,
JdbcServices jdbcServices,
JdbcConnectionAccess jdbcConnectionAccess)
Constructs a LogicalConnectionImpl
|
Modifier and Type | Method and Description |
---|---|
void |
addObserver(ConnectionObserver observer)
Add an observer interested in notification of connection events.
|
void |
aggressiveRelease()
Force aggressive release of the underlying connection.
|
Connection |
close()
Release the underlying connection and clean up any other resources associated
with this logical connection.
|
static LogicalConnectionImpl |
deserialize(ObjectInputStream ois,
TransactionContext transactionContext)
Deserialization hook
|
Connection |
getConnection()
Retrieves the connection currently "logically" managed by this LogicalConnectionImpl.
|
ConnectionReleaseMode |
getConnectionReleaseMode()
The release mode under which this logical connection is operating.
|
JdbcServices |
getJdbcServices()
Obtains the JDBC services associated with this logical connection.
|
boolean |
isAutoCommit()
Is this logical connection in auto-commit mode?
|
boolean |
isOpen()
Is this logical connection open? Another phraseology sometimes used is: "are we
logically connected"?
|
boolean |
isPhysicallyConnected()
Is this logical connection instance "physically" connected.
|
boolean |
isUserSuppliedConnection()
Does this logical connection wrap a user/application supplied connection?
|
Connection |
manualDisconnect()
Manually disconnect the underlying JDBC Connection.
|
void |
manualReconnect(Connection suppliedConnection)
Manually reconnect the underlying JDBC Connection.
|
void |
notifyObserversStatementPrepared()
Callback to notify all registered observers of a connection being prepared.
|
void |
releaseConnection()
Physically closes the JDBC Connection.
|
void |
removeObserver(ConnectionObserver connectionObserver)
Remove an observer
|
void |
serialize(ObjectOutputStream oos)
Serialization hook
|
public LogicalConnectionImpl(Connection userSuppliedConnection, ConnectionReleaseMode connectionReleaseMode, JdbcServices jdbcServices, JdbcConnectionAccess jdbcConnectionAccess)
userSuppliedConnection
- The user-supplied connectionconnectionReleaseMode
- The connection release mode to usejdbcServices
- JdbcServicesjdbcConnectionAccess
- JDBC Connection accesspublic JdbcServices getJdbcServices()
LogicalConnectionImplementor
getJdbcServices
in interface LogicalConnectionImplementor
public void addObserver(ConnectionObserver observer)
LogicalConnectionImplementor
addObserver
in interface LogicalConnectionImplementor
observer
- The observer.public void removeObserver(ConnectionObserver connectionObserver)
LogicalConnectionImplementor
removeObserver
in interface LogicalConnectionImplementor
connectionObserver
- The observer to remove.public boolean isOpen()
LogicalConnection
isOpen
in interface LogicalConnection
public boolean isPhysicallyConnected()
LogicalConnection
isPhysicallyConnected
in interface LogicalConnection
public Connection getConnection() throws HibernateException
LogicalConnection
getConnection
in interface LogicalConnection
HibernateException
public Connection close()
LogicalConnection
close
in interface LogicalConnection
null
if Hibernate was managing connection.public ConnectionReleaseMode getConnectionReleaseMode()
LogicalConnectionImplementor
getConnectionReleaseMode
in interface LogicalConnectionImplementor
public void aggressiveRelease()
aggressiveRelease
in interface LogicalConnectionImplementor
public void releaseConnection() throws JDBCException
releaseConnection
in interface LogicalConnectionImplementor
JDBCException
- Indicates problem closing a connectionpublic Connection manualDisconnect()
LogicalConnectionImplementor
manualDisconnect
in interface LogicalConnectionImplementor
public void manualReconnect(Connection suppliedConnection)
LogicalConnectionImplementor
manualReconnect
in interface LogicalConnectionImplementor
suppliedConnection
- For user supplied connection strategy the user needs to hand us the connection
with which to reconnect. It is an error to pass a connection in the other strategies.public boolean isAutoCommit()
LogicalConnectionImplementor
isAutoCommit
in interface LogicalConnectionImplementor
true
if auto-commitpublic boolean isUserSuppliedConnection()
LogicalConnectionImplementor
isUserSuppliedConnection
in interface LogicalConnectionImplementor
true
if the underlying connection was user supplied.public void notifyObserversStatementPrepared()
LogicalConnectionImplementor
notifyObserversStatementPrepared
in interface LogicalConnectionImplementor
public void serialize(ObjectOutputStream oos) throws IOException
oos
- The stream to write out state toIOException
- Problem accessing streampublic static LogicalConnectionImpl deserialize(ObjectInputStream ois, TransactionContext transactionContext) throws IOException, ClassNotFoundException
ois
- The stream to read our state fromtransactionContext
- The transactionContext which owns this logical connectionIOException
- Trouble accessing the streamClassNotFoundException
- Trouble reading the streamCopyright © 2001-2015 Red Hat, Inc. All Rights Reserved.