Class QueryTimeoutInterceptor
java.lang.Object
org.apache.tomcat.jdbc.pool.JdbcInterceptor
org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor
org.apache.tomcat.jdbc.pool.interceptor.QueryTimeoutInterceptor
- All Implemented Interfaces:
InvocationHandler
Interceptor that sets a query timeout on every created
Statement.-
Field Summary
Fields inherited from class AbstractCreateStatementInterceptor
constructors, CREATE_STATEMENT, CREATE_STATEMENT_IDX, EXECUTE, EXECUTE_BATCH, EXECUTE_QUERY, EXECUTE_TYPES, EXECUTE_UPDATE, GET_GENERATED_KEYS, GET_RESULTSET, GET_STATEMENT, PREPARE_CALL, PREPARE_CALL_IDX, PREPARE_STATEMENT, PREPARE_STATEMENT_IDX, RESULTSET_IDX, STATEMENT_TYPE_COUNT, STATEMENT_TYPESFields inherited from class JdbcInterceptor
CLOSE_VAL, EQUALS_VAL, GETCONNECTION_VAL, HASHCODE_VAL, ISCLOSED_VAL, ISVALID_VAL, ISWRAPPERFOR_VAL, properties, TOSTRING_VAL, UNWRAP_VAL -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidNo-op; this interceptor holds no state that requires cleanup on close.createStatement(Object proxy, Method method, Object[] args, Object statement, long time) Sets the query timeout on the created statement if it is aStatementand the timeout value is positive.voidsetProperties(Map<String, PoolProperties.InterceptorProperty> properties) Initializes thequeryTimeoutproperty from the provided configuration map.Methods inherited from class AbstractCreateStatementInterceptor
getConstructor, invoke, isExecute, isStatement, process, resetMethods inherited from class JdbcInterceptor
compare, compare, disconnected, getNext, getProperties, isUseEquals, poolClosed, poolStarted, setNext, setUseEquals
-
Constructor Details
-
QueryTimeoutInterceptor
public QueryTimeoutInterceptor()Default constructor.
-
-
Method Details
-
setProperties
Initializes thequeryTimeoutproperty from the provided configuration map.- Overrides:
setPropertiesin classJdbcInterceptor- 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 aStatementand the timeout value is positive.- Specified by:
createStatementin classAbstractCreateStatementInterceptor- Parameters:
proxy- the actual proxy objectmethod- the method that was calledargs- the arguments to the methodstatement- the statement that the underlying connection createdtime- 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:
closeInvokedin classAbstractCreateStatementInterceptor
-