org.apache.catalina
Interface Valve

All Known Implementing Classes:
ValveBase

public interface Valve

A Valve is a request processing component associated with a particular Container. A series of Valves may be associated with the same Container, creating a request processing pipeline.

HISTORICAL NOTE: The "Valve" name was assigned to this concept because a valve is what you use in a real world pipeline to control and/or modify flows through it.

Version:
$Revision: 1.1 $ $Date: 2000/08/11 05:24:12 $
Author:
Craig R. McClanahan, Gunnar Rjnning

Method Summary
 Container getContainer()
          Return the Container with which this Valve is associated, if any.
 java.lang.String getInfo()
          Return descriptive information about this Valve implementation.
 Valve getNext()
          Return the next Valve in the pipeline containing this Valve, if any.
 Valve getPrevious()
          Return the previous Valve in the pipeline containing this Valve, if any.
 void invoke(Request request, Response response)
          Perform request processing as required by this Valve.
 void setContainer(Container container)
          Set the Container with which this Valve is associated.
 void setNext(Valve valve)
          Set the next Valve in the pipeline containing this Valve.
 void setPrevious(Valve valve)
          Set the previous Valve in the pipeline containing this Valve.
 

Method Detail

getContainer

public Container getContainer()
Return the Container with which this Valve is associated, if any.

setContainer

public void setContainer(Container container)
Set the Container with which this Valve is associated.
Parameters:
container - The newly associated Container
Throws:
java.lang.IllegalArgumentException - if this Valve refused to be associated with the specified Container
IllegalStateException - if this Valve is already associated a different Container.

getInfo

public java.lang.String getInfo()
Return descriptive information about this Valve implementation.

getNext

public Valve getNext()
Return the next Valve in the pipeline containing this Valve, if any.

setNext

public void setNext(Valve valve)
Set the next Valve in the pipeline containing this Valve.
Parameters:
valve - The new next valve, or null if none

getPrevious

public Valve getPrevious()
Return the previous Valve in the pipeline containing this Valve, if any.

setPrevious

public void setPrevious(Valve valve)
Set the previous Valve in the pipeline containing this Valve.
Parameters:
valve - The new previous valve, or null if none

invoke

public void invoke(Request request,
                   Response response)
            throws java.io.IOException,
                   javax.servlet.ServletException
Perform request processing as required by this Valve.

An individual Valve MAY perform the following actions, in the specified order:

A Valve MUST NOT do any of the following things:

Parameters:
request - The servlet request to be processed
response - The servlet response to be created
Throws:
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet error occurs


Copyright © 2000 Apache Software Foundation. All Rights Reserved.