Module org.firebirdsql.jaybird
Package org.firebirdsql.gds.ng.listeners

# Class DatabaseListenerDispatcher

java.lang.Object
org.firebirdsql.gds.ng.listeners.AbstractListenerDispatcher<DatabaseListener>
org.firebirdsql.gds.ng.listeners.DatabaseListenerDispatcher

All Implemented Interfaces:
  `Iterable<DatabaseListener>`, `DatabaseListener`

public final class DatabaseListenerDispatcher extends AbstractListenerDispatcher<DatabaseListener> implements DatabaseListener
Dispatcher to maintain and notify other `DatabaseListener`.

Since:
  3.0
Author:
  Mark Rotteveel

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DatabaseListenerDispatcher()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `detached(FbDatabase database)`
  Called when the `database` connection has been detached
  `void`
  `detaching(FbDatabase database)`
  Called before the `database` will be detached.
  `protected void`
  `logError(String message, Throwable throwable)`
  `void`
  `warningReceived(FbDatabase database, SQLWarning warning)`
  Called when a warning was received for the `database` connection.

  ### Methods inherited from class org.firebirdsql.gds.ng.listeners.AbstractListenerDispatcher

  `addListener, addWeakListener, isShutdown, iterator, notify, removeAllListeners, removeListener, shutdown`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface java.lang.Iterable

  `forEach, spliterator`

- ## Constructor Details

  - ### DatabaseListenerDispatcher

    public DatabaseListenerDispatcher()

- ## Method Details

  - ### detaching

    public void detaching(FbDatabase database)
    Description copied from interface: `DatabaseListener`
    Called before the `database` will be detached.

    This event is intended for cleanup action, implementer should take care that no exceptions are thrown from this method.

    Specified by:
      `detaching` in interface `DatabaseListener`
    Parameters:
      `database` - The database object that is detaching

  - ### detached

    public void detached(FbDatabase database)
    Description copied from interface: `DatabaseListener`
    Called when the `database` connection has been detached
    Specified by:
      `detached` in interface `DatabaseListener`
    Parameters:
      `database` - The database object that was detached

  - ### warningReceived

    public void warningReceived(FbDatabase database, SQLWarning warning)
    Description copied from interface: `DatabaseListener`
    Called when a warning was received for the `database` connection.

    In implementation it is possible that some warnings are not sent to listeners on the database, but only to listeners on specific connection derived objects (like an `FbStatement` implementation).

    Specified by:
      `warningReceived` in interface `DatabaseListener`
    Parameters:
      `database` - Database receiving the warning
      `warning` - Warning

  - ### logError

    protected void logError(String message, Throwable throwable)
    Specified by:
      `logError` in class `AbstractListenerDispatcher<DatabaseListener>`