javax.resource.spi

## Interface ConnectionEventListener

- All Superinterfaces:
    EventListener

      public interface ConnectionEventListener
      extends EventListener

  The `ConnectionEventListener` interface provides an event callback mechanism to enable an application server to receive notifications from a `ManagedConnection` instance.

  An application server uses these event notifications to manage its connection pool, to clean up any invalid or terminated connections and to manage local transactions.

  An application server implements the `ConnectionEventListener` interface. It registers a connection listener with a `ManagedConnection` instance by using `ManagedConnection.addConnectionEventListener` method.

  Version:
    0.5
  Author:
    Rahul Sharma
  See Also:
    `ConnectionEvent`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `connectionClosed(ConnectionEvent event)` Notifies that an application component has closed the connection.
    `void` | `connectionErrorOccurred(ConnectionEvent event)` Notifies a connection related error.
    `void` | `localTransactionCommitted(ConnectionEvent event)` Notifies that a Resource Manager Local Transaction was committed on the ManagedConnection instance.
    `void` | `localTransactionRolledback(ConnectionEvent event)` Notifies that a Resource Manager Local Transaction was rolled back on the ManagedConnection instance.
    `void` | `localTransactionStarted(ConnectionEvent event)` Notifies that a Resource Manager Local Transaction was started on the ManagedConnection instance.

- - ### Method Detail

    - #### connectionClosed

          void connectionClosed(ConnectionEvent event)

      Notifies that an application component has closed the connection.

      A ManagedConnection instance notifies its registered set of listeners by calling ConnectionEventListener.connectionClosed method when an application component closes a connection handle. The application server uses this connection close event to put the ManagedConnection instance back in to the connection pool.

      Parameters:
        `event` - event object describing the source of the event

    - #### localTransactionStarted

          void localTransactionStarted(ConnectionEvent event)

      Notifies that a Resource Manager Local Transaction was started on the ManagedConnection instance.
      Parameters:
        `event` - event object describing the source of the event

    - #### localTransactionCommitted

          void localTransactionCommitted(ConnectionEvent event)

      Notifies that a Resource Manager Local Transaction was committed on the ManagedConnection instance.
      Parameters:
        `event` - event object describing the source of the event

    - #### localTransactionRolledback

          void localTransactionRolledback(ConnectionEvent event)

      Notifies that a Resource Manager Local Transaction was rolled back on the ManagedConnection instance.
      Parameters:
        `event` - event object describing the source of the event

    - #### connectionErrorOccurred

          void connectionErrorOccurred(ConnectionEvent event)

      Notifies a connection related error. The ManagedConnection instance calls the method ConnectionEventListener.connectionErrorOccurred to notify its registered listeners of the occurrence of a physical connection-related error. The event notification happens just before a resource adapter throws an exception to the application component using the connection handle. The connectionErrorOccurred method indicates that the associated ManagedConnection instance is now invalid and unusable. The application server handles the connection error event notification by initiating application server-specific cleanup (for example, removing ManagedConnection instance from the connection pool) and then calling ManagedConnection.destroy method to destroy the physical connection.
      Parameters:
        `event` - event object describing the source of the event

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.