Interface ConnectionCustomizer

All Known Implementing Classes:
AbstractConnectionCustomizer

public interface ConnectionCustomizer

Implementations of this interface should be immutable, and should offer public, no argument constructors.

The methods are handed raw, physical database Connections, not c3p0-generated proxies.

Although c3p0 will ensure this with respect to state controlled by standard JDBC methods, any modifications of vendor-specific state shold be made consistently so that all Connections in the pool are interchangable.

  • Method Summary

    Modifier and Type
    Method
    Description
    void
    onAcquire(Connection c, String parentDataSourceIdentityToken)
    Called immediately after a Connection is acquired from the underlying database for incorporation into the pool.
    void
    onCheckIn(Connection c, String parentDataSourceIdentityToken)
    Called immediately after a Connection is checked in, prior to reincorporation into the pool.
    void
    onCheckOut(Connection c, String parentDataSourceIdentityToken)
    Called immediately before a Connection is made available to a client upon checkout.
    void
    onDestroy(Connection c, String parentDataSourceIdentityToken)
    Called immediately before a Connection is destroyed after being removed from the pool.
  • Method Details

    • onAcquire

      void onAcquire(Connection c, String parentDataSourceIdentityToken) throws Exception

      Called immediately after a Connection is acquired from the underlying database for incorporation into the pool.

      This method is only called once per Connection. If standard JDBC Connection properties are modified [holdability, transactionIsolation, readOnly], those modifications will override defaults throughout the Connection's tenure in the pool.

      Throws:
      Exception
    • onDestroy

      void onDestroy(Connection c, String parentDataSourceIdentityToken) throws Exception
      Called immediately before a Connection is destroyed after being removed from the pool.
      Throws:
      Exception
    • onCheckOut

      void onCheckOut(Connection c, String parentDataSourceIdentityToken) throws Exception
      Called immediately before a Connection is made available to a client upon checkout.
      Throws:
      Exception
    • onCheckIn

      void onCheckIn(Connection c, String parentDataSourceIdentityToken) throws Exception
      Called immediately after a Connection is checked in, prior to reincorporation into the pool.
      Throws:
      Exception