Apache Tomcat 7.0.28

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

java.lang.Object
  extended by org.apache.tomcat.jdbc.pool.JdbcInterceptor
      extended by org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor
          extended by 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, GETCONNECTION_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.28

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