org.firebirdsql.pool

Class StatementHandler

Implemented Interfaces:
InvocationHandler

public class StatementHandler
extends java.lang.Object
implements InvocationHandler

Dynamic proxy handler that together with org.firebirdsql.pool.PooledConnectionHandler ensure that statements will be closed before connection is returned to the pool.
Author:
Roman Rokytskyy

Constructor Summary

StatementHandler(org.firebirdsql.pool.PooledConnectionHandler connectionHandler, Statement wrappedObject)
Create instance of this class for the specified connection handler and

Method Summary

Statement
getProxy()
Get dynamic proxy instant wrapping the statement.
Statement
getWrappedObject()
Get original statement that was wrapped.
Object
invoke(Object proxy, Method method, Object[] args)
Invoke a specified method with the specified arguments on the specified proxy.

Constructor Details

StatementHandler

public StatementHandler(org.firebirdsql.pool.PooledConnectionHandler connectionHandler,
                        Statement wrappedObject)
Create instance of this class for the specified connection handler and
Parameters:
connectionHandler - instance of PooledConnectionHandler that is responsible for a connection that created a statement to wrap.
wrappedObject - instance of Statement to wrap.

Method Details

getProxy

public Statement getProxy()
Get dynamic proxy instant wrapping the statement.
Returns:
instance of Statement.

getWrappedObject

public Statement getWrappedObject()
Get original statement that was wrapped.
Returns:
instance of Statement.

invoke

public Object invoke(Object proxy,
                     Method method,
                     Object[] args)
            throws Throwable
Invoke a specified method with the specified arguments on the specified proxy. This method checks if Statement.close() is called and de-registers the statement from automatic close on connection close.
Parameters:
proxy - proxy, on which the method was called.
method - method that was invoked.
args - arguments that were passed to the method.
Returns:
object that was returned by the method.

Copyright B) 2001 David Jencks and other authors. All rights reserved.