Package org.postgresql.ds
Class PGPooledConnection
- java.lang.Object
-
- org.postgresql.ds.PGPooledConnection
-
- All Implemented Interfaces:
javax.sql.PooledConnection
- Direct Known Subclasses:
PGXAConnection
public class PGPooledConnection extends java.lang.Object implements javax.sql.PooledConnection
PostgreSQL implementation of the PooledConnection interface. This shouldn't be used directly, as the pooling client should just interact with the ConnectionPool instead.- Author:
- Aaron Mulder (ammulder@chariotsolutions.com), Csaba Nagy (ncsaba@yahoo.com)
- See Also:
PGConnectionPoolDataSource
-
-
Constructor Summary
Constructors Constructor Description PGPooledConnection(java.sql.Connection con, boolean autoCommit)
PGPooledConnection(java.sql.Connection con, boolean autoCommit, boolean isXA)
Creates a new PooledConnection representing the specified physical connection.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addConnectionEventListener(javax.sql.ConnectionEventListener connectionEventListener)
Adds a listener for close or fatal error events on the connection handed out to a client.void
addStatementEventListener(javax.sql.StatementEventListener listener)
void
close()
Closes the physical database connection represented by this PooledConnection.protected javax.sql.ConnectionEvent
createConnectionEvent(java.sql.SQLException e)
java.sql.Connection
getConnection()
Gets a handle for a client to use.void
removeConnectionEventListener(javax.sql.ConnectionEventListener connectionEventListener)
Removes a listener for close or fatal error events on the connection handed out to a client.void
removeStatementEventListener(javax.sql.StatementEventListener listener)
-
-
-
Constructor Detail
-
PGPooledConnection
public PGPooledConnection(java.sql.Connection con, boolean autoCommit, boolean isXA)
Creates a new PooledConnection representing the specified physical connection.- Parameters:
con
- connectionautoCommit
- whether to autocommitisXA
- whether connection is a XA connection
-
PGPooledConnection
public PGPooledConnection(java.sql.Connection con, boolean autoCommit)
-
-
Method Detail
-
addConnectionEventListener
public void addConnectionEventListener(javax.sql.ConnectionEventListener connectionEventListener)
Adds a listener for close or fatal error events on the connection handed out to a client.- Specified by:
addConnectionEventListener
in interfacejavax.sql.PooledConnection
-
removeConnectionEventListener
public void removeConnectionEventListener(javax.sql.ConnectionEventListener connectionEventListener)
Removes a listener for close or fatal error events on the connection handed out to a client.- Specified by:
removeConnectionEventListener
in interfacejavax.sql.PooledConnection
-
close
public void close() throws java.sql.SQLException
Closes the physical database connection represented by this PooledConnection. If any client has a connection based on this PooledConnection, it is forcibly closed as well.- Specified by:
close
in interfacejavax.sql.PooledConnection
- Throws:
java.sql.SQLException
-
getConnection
public java.sql.Connection getConnection() throws java.sql.SQLException
Gets a handle for a client to use. This is a wrapper around the physical connection, so the client can call close and it will just return the connection to the pool without really closing the pgysical connection.According to the JDBC 2.0 Optional Package spec (6.2.3), only one client may have an active handle to the connection at a time, so if there is a previous handle active when this is called, the previous one is forcibly closed and its work rolled back.
- Specified by:
getConnection
in interfacejavax.sql.PooledConnection
- Throws:
java.sql.SQLException
-
createConnectionEvent
protected javax.sql.ConnectionEvent createConnectionEvent(java.sql.SQLException e)
-
removeStatementEventListener
public void removeStatementEventListener(javax.sql.StatementEventListener listener)
- Specified by:
removeStatementEventListener
in interfacejavax.sql.PooledConnection
-
addStatementEventListener
public void addStatementEventListener(javax.sql.StatementEventListener listener)
- Specified by:
addStatementEventListener
in interfacejavax.sql.PooledConnection
-
-