Top Description Fields Methods
org.h2.api

public Interface DatabaseEventListener

extends EventListener
Imports
java.sql.SQLException, java.util.EventListener

A class that implements this interface can get notified about exceptions and other events. A database event listener can be registered when connecting to a database. Example database URL: jdbc:h2:./test;DATABASE_EVENT_LISTENER='com.acme.DbListener'

Field Summary

Modifier and TypeField and Description
public static final int
STATE_BACKUP_FILE

This state is used during the BACKUP command.

public static final int
STATE_CREATE_INDEX

This state is used when re-creating an index.

public static final int
STATE_RECONNECTED

This state is used after re-connecting to a database (if auto-reconnect is enabled).

public static final int
STATE_RECOVER

This state is used when re-applying the transaction log or rolling back uncommitted transactions.

public static final int
STATE_SCAN_FILE

This state is used when scanning the database file.

public static final int
STATE_STATEMENT_END

This state is used when a query ends.

public static final int
STATE_STATEMENT_PROGRESS

This state is used for periodic notification during long-running queries.

public static final int
STATE_STATEMENT_START

This state is used when a query starts.

Method Summary

Modifier and TypeMethod and Description
public default void
closingDatabase()

This method is called before the database is closed normally.

public default void
exceptionThrown(SQLException
the exception
e
,
String
the SQL statement
sql
)

This method is called if an exception occurred.

public default void
init(String
- the database URL
url
)

This method is called just after creating the object.

public default void
opened()

This method is called after the database has been opened.

public default void
setProgress(int
the state
state
,
String
the object name
name
,
long
the current position
x
,
long
the highest possible value or 0 if unknown
max
)

This method is called for long running events, such as recovering, scanning a file or building an index.

Field Detail

STATE_BACKUP_FILEback to summary
public static final int STATE_BACKUP_FILE

This state is used during the BACKUP command.

STATE_CREATE_INDEXback to summary
public static final int STATE_CREATE_INDEX

This state is used when re-creating an index.

STATE_RECONNECTEDback to summary
public static final int STATE_RECONNECTED

This state is used after re-connecting to a database (if auto-reconnect is enabled).

STATE_RECOVERback to summary
public static final int STATE_RECOVER

This state is used when re-applying the transaction log or rolling back uncommitted transactions.

STATE_SCAN_FILEback to summary
public static final int STATE_SCAN_FILE

This state is used when scanning the database file.

STATE_STATEMENT_ENDback to summary
public static final int STATE_STATEMENT_END

This state is used when a query ends.

STATE_STATEMENT_PROGRESSback to summary
public static final int STATE_STATEMENT_PROGRESS

This state is used for periodic notification during long-running queries.

STATE_STATEMENT_STARTback to summary
public static final int STATE_STATEMENT_START

This state is used when a query starts.

Method Detail

closingDatabaseback to summary
public default void closingDatabase()

This method is called before the database is closed normally. It is safe to connect to the database and execute statements at this point, however the connection must be closed before the method returns.

exceptionThrownback to summary
public default void exceptionThrown(SQLException e, String sql)

This method is called if an exception occurred.

Parameters
e:SQLException

the exception

sql:String

the SQL statement

initback to summary
public default void init(String url)

This method is called just after creating the object. This is done when opening the database if the listener is specified in the database URL, but may be later if the listener is set at runtime with the SET SQL statement.

Parameters
url:String

- the database URL

openedback to summary
public default void opened()

This method is called after the database has been opened. It is safe to connect to the database and execute statements at this point.

setProgressback to summary
public default void setProgress(int state, String name, long x, long max)

This method is called for long running events, such as recovering, scanning a file or building an index.

More states might be added in future versions, therefore implementations should silently ignore states that they don't understand.

Parameters
state:int

the state

name:String

the object name

x:long

the current position

max:long

the highest possible value or 0 if unknown