org.postgresql.ds
Class PGPooledConnection

java.lang.Object
  extended by org.postgresql.ds.PGPooledConnection
All Implemented Interfaces:
PooledConnection
Direct Known Subclasses:
PGXAConnection

public class PGPooledConnection
extends Object
implements 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 ([email protected]), Csaba Nagy ([email protected])
See Also:
PGConnectionPoolDataSource

Constructor Summary
PGPooledConnection(Connection con, boolean autoCommit)
           
PGPooledConnection(Connection con, boolean autoCommit, boolean isXA)
          Creates a new PooledConnection representing the specified physical connection.
 
Method Summary
 void addConnectionEventListener(ConnectionEventListener connectionEventListener)
          Adds a listener for close or fatal error events on the connection handed out to a client.
 void addStatementEventListener(StatementEventListener listener)
           
 void close()
          Closes the physical database connection represented by this PooledConnection.
protected  ConnectionEvent createConnectionEvent(SQLException e)
           
 Connection getConnection()
          Gets a handle for a client to use.
 Logger getParentLogger()
           
 void removeConnectionEventListener(ConnectionEventListener connectionEventListener)
          Removes a listener for close or fatal error events on the connection handed out to a client.
 void removeStatementEventListener(StatementEventListener listener)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PGPooledConnection

public PGPooledConnection(Connection con,
                          boolean autoCommit,
                          boolean isXA)
Creates a new PooledConnection representing the specified physical connection.

Parameters:
con - connection
autoCommit - whether to autocommit
isXA - whether connection is a XA connection

PGPooledConnection

public PGPooledConnection(Connection con,
                          boolean autoCommit)
Method Detail

addConnectionEventListener

public void addConnectionEventListener(ConnectionEventListener connectionEventListener)
Adds a listener for close or fatal error events on the connection handed out to a client.

Specified by:
addConnectionEventListener in interface PooledConnection

removeConnectionEventListener

public void removeConnectionEventListener(ConnectionEventListener connectionEventListener)
Removes a listener for close or fatal error events on the connection handed out to a client.

Specified by:
removeConnectionEventListener in interface PooledConnection

close

public void close()
           throws 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 interface PooledConnection
Throws:
SQLException

getConnection

public Connection getConnection()
                         throws 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 interface PooledConnection
Throws:
SQLException

createConnectionEvent

protected ConnectionEvent createConnectionEvent(SQLException e)

removeStatementEventListener

public void removeStatementEventListener(StatementEventListener listener)
Specified by:
removeStatementEventListener in interface PooledConnection

addStatementEventListener

public void addStatementEventListener(StatementEventListener listener)
Specified by:
addStatementEventListener in interface PooledConnection

getParentLogger

public Logger getParentLogger()
                       throws SQLFeatureNotSupportedException
Throws:
SQLFeatureNotSupportedException


Copyright © 2016 PostgreSQL Global Development Group. All rights reserved.