Apache Tomcat 7.0.42

## org.apache.tomcat.jdbc.pool.interceptor
Class StatementFinalizer

    java.lang.Object
      org.apache.tomcat.jdbc.pool.JdbcInterceptor
          org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor
              org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer

All Implemented Interfaces:
  InvocationHandler

    public class StatementFinalizer

extends AbstractCreateStatementInterceptor

Keeps track of statements associated with a connection and invokes close upon `Connection.close()` Useful for applications that dont close the associated statements after being done with a connection.

Author:
  fhanik

Field Summary
`protected ArrayList<WeakReference<Statement>>` `statements`

Fields inherited from class org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor
`CREATE_STATEMENT, CREATE_STATEMENT_IDX, EXECUTE, EXECUTE_BATCH, EXECUTE_QUERY, EXECUTE_TYPES, EXECUTE_UPDATE, PREPARE_CALL, PREPARE_CALL_IDX, PREPARE_STATEMENT, PREPARE_STATEMENT_IDX, STATEMENT_TYPE_COUNT, STATEMENT_TYPES`

Fields inherited from class org.apache.tomcat.jdbc.pool.JdbcInterceptor
`CLOSE_VAL, EQUALS_VAL, GETCONNECTION_VAL, HASHCODE_VAL, ISCLOSED_VAL, ISVALID_VAL, ISWRAPPERFOR_VAL, properties, TOSTRING_VAL, UNWRAP_VAL`

Constructor Summary
`StatementFinalizer()`

Method Summary
`void` `closeInvoked()` Method invoked when the operation `Connection.close()` is invoked.
`Object` `createStatement(Object proxy, Method method, Object[] args, Object statement, long time)` This method will be invoked after a successful statement creation.
`void` `reset(ConnectionPool parent, PooledConnection con)` no-op for this interceptor. no state is stored.

Methods inherited from class org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor
`invoke, isExecute, isStatement, process`

Methods inherited from class org.apache.tomcat.jdbc.pool.JdbcInterceptor
`compare, compare, disconnected, getNext, getProperties, isUseEquals, poolClosed, poolStarted, setNext, setProperties, setUseEquals`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### statements

    protected ArrayList<WeakReference<Statement>> statements

Constructor Detail

### StatementFinalizer

    public StatementFinalizer()

Method Detail

### createStatement

    public Object createStatement(Object proxy,
                                  Method method,
                                  Object[] args,
                                  Object statement,
                                  long time)

  Description copied from class: `AbstractCreateStatementInterceptor`
  This method will be invoked after a successful statement creation. This method can choose to return a wrapper around the statement or return the statement itself. If this method returns a wrapper then it should return a wrapper object that implements one of the following interfaces. `Statement`, `PreparedStatement` or `CallableStatement`

  Specified by:
    `createStatement` in class `AbstractCreateStatementInterceptor`
  Parameters:
    `proxy` - the actual proxy object
    `method` - the method that was called. It will be one of the methods defined in `AbstractCreateStatementInterceptor.STATEMENT_TYPES`
    `args` - the arguments to the method
    `statement` - the statement that the underlying connection created
  Returns:
    a `Statement` object

### closeInvoked

    public void closeInvoked()

  Description copied from class: `AbstractCreateStatementInterceptor`
  Method invoked when the operation `Connection.close()` is invoked.

  Specified by:
    `closeInvoked` in class `AbstractCreateStatementInterceptor`

### reset

    public void reset(ConnectionPool parent,
                      PooledConnection con)

  Description copied from class: `AbstractCreateStatementInterceptor`
  no-op for this interceptor. no state is stored.

  Overrides:
    `reset` in class `AbstractCreateStatementInterceptor`
  Parameters:
    `parent` - - the connection pool owning the connection
    `con` - - the pooled connection

Apache Tomcat 7.0.42

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.