@FunctionalInterface public interface ValveContext
A ValveContext is the mechanism by which a Valve can trigger the
execution of the next Valve in a Pipeline, without having to know anything
about the internal implementation mechanisms. An instance of a class
implementing this interface is passed as a parameter to the
Valve.invoke()
method of each executed Valve.
IMPLEMENTATION NOTE: It is up to the implementation of ValveContext to ensure that simultaneous requests being processed (by separate threads) through the same Pipeline do not interfere with each other's flow of control.
Modifier and Type | Method and Description |
---|---|
void |
invokeNext(PipelineData pipelineData)
Cause the
invoke() method of the next Valve
that is part of the Pipeline currently being processed (if any)
to be executed, passing on the specified request and response
objects plus this ValveContext instance. |
void invokeNext(PipelineData pipelineData) throws IOException, TurbineException
Cause the invoke()
method of the next Valve
that is part of the Pipeline currently being processed (if any)
to be executed, passing on the specified request and response
objects plus this ValveContext
instance.
Exceptions thrown by a subsequently executed Valve will be
passed on to our caller.
If there are no more Valves to be executed, execution of this method will result in a no op.
pipelineData
- The run-time information, including the servlet
request and response we are processing.IOException
- Thrown by a subsequent Valve.TurbineException
- Thrown by a subsequent Valve.TurbineException
- No further Valves configured in the
Pipeline currently being processed.Copyright © 2000–2019 The Apache Software Foundation. All rights reserved.