public class ProxoolConnectionProvider extends Object implements ConnectionProvider
ConnectionProvider
,
Serialized FormModifier and Type | Field and Description |
---|---|
static ProxoolMessageLogger |
LOG |
Constructor and Description |
---|
ProxoolConnectionProvider() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Release all resources held by this provider.
|
void |
closeConnection(Connection conn)
Dispose of a used connection.
|
void |
configure(Properties props)
Initialize the connection provider from given properties.
|
Connection |
getConnection()
Grab a connection
|
boolean |
isUnwrappableAs(Class unwrapType)
Can this wrapped service be unwrapped as the indicated type?
|
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. |
<T> T |
unwrap(Class<T> unwrapType)
Unproxy the service proxy
|
public static final ProxoolMessageLogger LOG
public Connection getConnection() throws SQLException
getConnection
in interface ConnectionProvider
SQLException
public boolean isUnwrappableAs(Class unwrapType)
Wrapped
isUnwrappableAs
in interface Wrapped
unwrapType
- The type to check.public <T> T unwrap(Class<T> unwrapType)
Wrapped
public void closeConnection(Connection conn) throws SQLException
closeConnection
in interface ConnectionProvider
conn
- a JDBC connectionSQLException
public void configure(Properties props) throws HibernateException
props
- SessionFactory propertiesHibernateException
public void close() throws HibernateException
HibernateException
public 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.ConnectionProvider.supportsAggressiveRelease()
Copyright © 2001-2013 Red Hat, Inc. All Rights Reserved.