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>`