|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.ojb.broker.accesslayer.ConnectionManagerImpl
public class ConnectionManagerImpl
Manages Connection ressources.
ConnectionManagerIF
Constructor Summary | |
---|---|
ConnectionManagerImpl(PersistenceBroker broker)
|
Method Summary | |
---|---|
void |
clearBatch()
Clear batch (if the batch mode where used). |
void |
executeBatch()
Execute batch (if the batch mode where used). |
void |
executeBatchIfNecessary()
Execute batch if the number of statements in it exceeded the limit (if the batch mode where used). |
Connection |
getConnection()
Returns the underlying connection, requested from ConnectionFactory . |
JdbcConnectionDescriptor |
getConnectionDescriptor()
Returns the associated JdbcConnectionDescriptor |
Platform |
getSupportedPlatform()
Returns the supported Platform
determined by the JdbcConnectionDescriptor . |
ConnectionFactory |
getUnderlyingConnectionFactory()
Returns the underlying used ConnectionFactory
implementation. |
boolean |
isAlive(Connection conn)
Check if underlying connection was alive. |
boolean |
isBatchMode()
|
boolean |
isInLocalTransaction()
Hold connection is in local transaction. |
void |
localBegin()
Start transaction on the underlying connection. |
void |
localCommit()
Call commit on the underlying connection. |
void |
localRollback()
Call rollback on the underlying connection. |
void |
releaseConnection()
Release connection to the ConnectionFactory , make
sure that you call the method in either case, it's the only way to free the connection. |
protected void |
restoreAutoCommitState()
Reset autoCommit state. |
void |
setBatchMode(boolean mode)
Sets the batch mode on or off - this switch only works if you set attribute batch-mode
in jdbc-connection-descriptor true and your database
support batch mode. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ConnectionManagerImpl(PersistenceBroker broker)
Method Detail |
---|
public JdbcConnectionDescriptor getConnectionDescriptor()
JdbcConnectionDescriptor
getConnectionDescriptor
in interface ConnectionManagerIF
public Platform getSupportedPlatform()
ConnectionManagerIF
Platform
determined by the JdbcConnectionDescriptor
.
getSupportedPlatform
in interface ConnectionManagerIF
ConnectionManagerIF.getConnectionDescriptor()
public Connection getConnection() throws LookupException
ConnectionFactory
.
PB#beginTransaction() opens a single jdbc connection via PB#serviceConnectionManager().localBegin(). If you call PB#serviceConnectionManager().getConnection() later it returns the already opened connection. The PB instance will release the used connection during PB#commitTransaction() or PB#abortTransaction() or PB#close().
NOTE: Never call Connection.close() on the connection requested from the ConnectionManager.
Cleanup of used connection is done by OJB itself. If you need to release a used connection
call releaseConnection()
.
getConnection
in interface ConnectionManagerIF
LookupException
public void localBegin()
localBegin
in interface ConnectionManagerIF
public void localCommit()
localCommit
in interface ConnectionManagerIF
public void localRollback()
localRollback
in interface ConnectionManagerIF
protected void restoreAutoCommitState()
public boolean isAlive(Connection conn)
isAlive
in interface ConnectionManagerIF
public boolean isInLocalTransaction()
ConnectionManagerIF
isInLocalTransaction
in interface ConnectionManagerIF
public void releaseConnection()
ConnectionFactory
, make
sure that you call the method in either case, it's the only way to free the connection.
releaseConnection
in interface ConnectionManagerIF
public ConnectionFactory getUnderlyingConnectionFactory()
ConnectionFactory
implementation.
public void setBatchMode(boolean mode)
batch-mode
in jdbc-connection-descriptor
true and your database
support batch mode.
setBatchMode
in interface ConnectionManagerIF
mode
- the batch modepublic boolean isBatchMode()
isBatchMode
in interface ConnectionManagerIF
public void executeBatch() throws OJBBatchUpdateException
executeBatch
in interface ConnectionManagerIF
OJBBatchUpdateException
public void executeBatchIfNecessary() throws OJBBatchUpdateException
executeBatchIfNecessary
in interface ConnectionManagerIF
OJBBatchUpdateException
public void clearBatch()
clearBatch
in interface ConnectionManagerIF
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |