Class QueryTimeoutInterceptor

All Implemented Interfaces:
InvocationHandler

public class QueryTimeoutInterceptor extends AbstractCreateStatementInterceptor
Interceptor that sets a query timeout on every created Statement.
  • Constructor Details

    • QueryTimeoutInterceptor

      public QueryTimeoutInterceptor()
      Default constructor.
  • Method Details

    • setProperties

      public void setProperties(Map<String, PoolProperties.InterceptorProperty> properties)
      Initializes the queryTimeout property from the provided configuration map.
      Overrides:
      setProperties in class JdbcInterceptor
      Parameters:
      properties - map of interceptor properties
    • createStatement

      public Object createStatement(Object proxy, Method method, Object[] args, Object statement, long time)
      Sets the query timeout on the created statement if it is a Statement and the timeout value is positive.
      Specified by:
      createStatement in class AbstractCreateStatementInterceptor
      Parameters:
      proxy - the actual proxy object
      method - the method that was called
      args - the arguments to the method
      statement - the statement that the underlying connection created
      time - elapsed time in milliseconds
      Returns:
      the (possibly wrapped) statement object
    • closeInvoked

      public void closeInvoked()
      No-op; this interceptor holds no state that requires cleanup on close.
      Specified by:
      closeInvoked in class AbstractCreateStatementInterceptor