|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.hibernate.testing.jta.JtaAwareConnectionProviderImpl
public class JtaAwareConnectionProviderImpl
A DataSource
implementation intended for testing Hibernate/JTA interaction. In that limited scope we
only ever have one single resource (the database connection) so we do not at all care about full-blown XA
semantics. This class behaves accordingly. This class also assumes usage of and access to JBossTS/Arjuna.
Nested Class Summary | |
---|---|
static class |
JtaAwareConnectionProviderImpl.XAResourceWrapper
|
Constructor Summary | |
---|---|
JtaAwareConnectionProviderImpl()
|
Method Summary | ||
---|---|---|
void |
closeConnection(Connection conn)
Release a connection from Hibernate use. |
|
void |
configure(Map configurationValues)
Configure the service. |
|
protected Transaction |
findCurrentTransaction()
|
|
Connection |
getConnection()
Obtains a connection for Hibernate use according to the underlying strategy of this provider. |
|
boolean |
isUnwrappableAs(Class unwrapType)
Can this wrapped service be unwrapped as the indicated type? |
|
void |
stop()
Stop phase notification |
|
boolean |
supportsAggressiveRelease()
Does this connection provider support aggressive release of JDBC connections and re-acquisition of those connections (if need be) later? This is used in conjunction with AvailableSettings.RELEASE_CONNECTIONS
to aggressively release JDBC connections. |
|
|
unwrap(Class<T> unwrapType)
Unproxy the service proxy |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public JtaAwareConnectionProviderImpl()
Method Detail |
---|
public void configure(Map configurationValues)
Configurable
configure
in interface Configurable
configurationValues
- The configuration properties.public void stop()
Stoppable
stop
in interface Stoppable
public Connection getConnection() throws SQLException
ConnectionProvider
getConnection
in interface ConnectionProvider
SQLException
- Indicates a problem opening a connectionpublic void closeConnection(Connection conn) throws SQLException
ConnectionProvider
closeConnection
in interface ConnectionProvider
conn
- The JDBC connection to release
SQLException
- Indicates a problem closing the connectionpublic boolean supportsAggressiveRelease()
ConnectionProvider
AvailableSettings.RELEASE_CONNECTIONS
to aggressively release JDBC connections. However, the configured ConnectionProvider
must support re-acquisition of the same underlying connection for that semantic to work.
Typically, this is only true in managed environments where a container
tracks connections by transaction or thread.
Note that JTA semantic depends on the fact that the underlying connection provider does
support aggressive release.
supportsAggressiveRelease
in interface ConnectionProvider
true
if aggressive releasing is supported; false
otherwise.protected Transaction findCurrentTransaction()
public boolean isUnwrappableAs(Class unwrapType)
Wrapped
isUnwrappableAs
in interface Wrapped
unwrapType
- The type to check.
public <T> T unwrap(Class<T> unwrapType)
Wrapped
unwrap
in interface Wrapped
unwrapType
- The java type as which to unwrap this instance.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |