Class QueryTimeoutInterceptor

  • All Implemented Interfaces:
    java.lang.reflect.InvocationHandler

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

      • QueryTimeoutInterceptor

        public QueryTimeoutInterceptor()
        Default constructor.
    • Method Detail

      • setProperties

        public void setProperties​(java.util.Map<java.lang.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 java.lang.Object createStatement​(java.lang.Object proxy,
                                                java.lang.reflect.Method method,
                                                java.lang.Object[] args,
                                                java.lang.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