# Class StatementEvent

java.lang.Object
java.util.EventObject
javax.sql.StatementEvent

All Implemented Interfaces:
  `Serializable`

public class StatementEvent extends EventObject
A `StatementEvent` is sent to all `StatementEventListener`s which were registered with a `PooledConnection`. This occurs when the driver determines that a `PreparedStatement` that is associated with the `PooledConnection` has been closed or the driver determines is invalid.

Since:
  1.6
See Also:
  - Serialized Form

- ## Field Summary

  ### Fields declared in class EventObject

  `source`
  Modifier and Type
  Field
  Description
  `protected Object`
  `source`
  The object on which the Event initially occurred.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StatementEvent(PooledConnection con, PreparedStatement statement)`
  Constructs a `StatementEvent` with the specified `PooledConnection` and `PreparedStatement`.
  `StatementEvent(PooledConnection con, PreparedStatement statement, SQLException exception)`
  Constructs a `StatementEvent` with the specified `PooledConnection`, `PreparedStatement` and `SQLException`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `SQLException`
  `getSQLException()`
  Returns the `SQLException` the driver is about to throw
  `PreparedStatement`
  `getStatement()`
  Returns the `PreparedStatement` that is being closed or is invalid

  ### Methods declared in class EventObject

  `getSource, toString`
  Modifier and Type
  Method
  Description
  `Object`
  `getSource()`
  The object on which the Event initially occurred.
  `String`
  `toString()`
  Returns a String representation of this EventObject.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Constructor Details

  - ### StatementEvent

    public StatementEvent(PooledConnection con, PreparedStatement statement)
    Constructs a `StatementEvent` with the specified `PooledConnection` and `PreparedStatement`. The `SQLException` contained in the event defaults to null.
    Parameters:
      `con` - The `PooledConnection` that the closed or invalid `PreparedStatement`is associated with.
      `statement` - The `PreparedStatement` that is being closed or is invalid
    Throws:
      `IllegalArgumentException` - if `con` is null.
    Since:
      1.6

  - ### StatementEvent

    public StatementEvent(PooledConnection con, PreparedStatement statement, SQLException exception)
    Constructs a `StatementEvent` with the specified `PooledConnection`, `PreparedStatement` and `SQLException`
    Parameters:
      `con` - The `PooledConnection` that the closed or invalid `PreparedStatement` is associated with.
      `statement` - The `PreparedStatement` that is being closed or is invalid
      `exception` - The `SQLException` the driver is about to throw to the application
    Throws:
      `IllegalArgumentException` - if `con` is null.
    Since:
      1.6

- ## Method Details

  - ### getStatement

    public PreparedStatement getStatement()
    Returns the `PreparedStatement` that is being closed or is invalid
    Returns:
      The `PreparedStatement` that is being closed or is invalid
    Since:
      1.6

  - ### getSQLException

    public SQLException getSQLException()
    Returns the `SQLException` the driver is about to throw
    Returns:
      The `SQLException` the driver is about to throw
    Since:
      1.6