This interface specifies a component that allows a Valve to trigger the execution of the next Valve in a Pipeline without having to know anything about internal implementation mechanisms.
An instance of a class implementing this interface is passed as a parameter to invoke() for each executed Valve.
Cause invoke() to be called on the next Valve in the Pipeline that is currently being processed,
passing on the specified Request and Response objects plus this ValveContext instance.
Exceptions thrown by a subsequently executed Valve,
Filter or Servlet will be passed on to the caller.
If there are no more Valves to be executed,
an appropriate ServletException will be thrown by this ValveContext.