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.
Version:
$Revision: 1.3 $ $Date: 2001/07/22 20:13:30 $
Author:
Craig R. McClanahan, Gunnar Rjnning, Peter Donald
Method Summary
java.lang.String
getInfo()
Return descriptive information about this ValveContext implementation.
void
invokeNext(Request request,
Response response)
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.
Method Detail
getInfo
public java.lang.String getInfo()
Return descriptive information about this ValveContext implementation.
invokeNext
public void invokeNext(Request request,
Response response)
throws java.io.IOException,
javax.servlet.ServletException
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 (or a Filter or Servlet at the application level) will be
passed on to our caller.
If there are no more Valves to be executed, an appropriate
ServletException will be thrown by this ValveContext.
Parameters:
request - The request currently being processed
response - The response currently being created
Throws:
java.io.IOException - if thrown by a subsequent Valve, Filter, or
Servlet
javax.servlet.ServletException - if thrown by a subsequent Valve, Filter,
or Servlet
javax.servlet.ServletException - if there are no further Valves configured
in the Pipeline currently being processed