# Class StatementDecoratorInterceptor.StatementProxy<T extends Statement>

java.lang.Object
org.apache.tomcat.jdbc.pool.interceptor.StatementDecoratorInterceptor.StatementProxy<T>

All Implemented Interfaces:
  `InvocationHandler`

Direct Known Subclasses:
  `StatementCache.CachedStatement`

Enclosing class:
  `StatementDecoratorInterceptor`

protected class StatementDecoratorInterceptor.StatementProxy<T extends Statement> extends Object implements InvocationHandler
Class to measure query execute time.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected boolean`
  `closed`
  `protected T`
  `delegate`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StatementProxy(T delegate, String sql)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `closeInvoked()`
  `Object`
  `getActualProxy()`
  `Object`
  `getConnection()`
  `Constructor<?>`
  `getConstructor()`
  `T`
  `getDelegate()`
  `String`
  `getSql()`
  `Object`
  `invoke(Object proxy, Method method, Object[] args)`
  `void`
  `setActualProxy(Object proxy)`
  `void`
  `setConnection(Object proxy)`
  `void`
  `setConstructor(Constructor<?> constructor)`
  `String`
  `toString()`

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### closed

    protected boolean closed

  - ### delegate

    protected T extends Statement delegate

- ## Constructor Details

  - ### StatementProxy

    public StatementProxy(T delegate, String sql)

- ## Method Details

  - ### getDelegate

    public T getDelegate()

  - ### getSql

    public String getSql()

  - ### setConnection

    public void setConnection(Object proxy)

  - ### getConnection

    public Object getConnection()

  - ### setActualProxy

    public void setActualProxy(Object proxy)

  - ### getActualProxy

    public Object getActualProxy()

  - ### getConstructor

    public Constructor<?> getConstructor()

  - ### setConstructor

    public void setConstructor(Constructor<?> constructor)

  - ### closeInvoked

    public void closeInvoked()

  - ### invoke

    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
    Specified by:
      `invoke` in interface `InvocationHandler`
    Throws:
      `Throwable`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`