Apache Tomcat 7.0.28

org.apache.catalina
Interface Valve

All Known Subinterfaces:
ClusterValve
All Known Implementing Classes:
AccessLogValve, AuthenticatorBase, BasicAuthenticator, ClusterSingleSignOn, CometConnectionManagerValve, CrawlerSessionManagerValve, DigestAuthenticator, ErrorReportValve, ExtendedAccessLogValve, FormAuthenticator, JDBCAccessLogValve, JvmRouteBinderValve, NonLoginAuthenticator, PersistentValve, RemoteAddrValve, RemoteHostValve, RemoteIpValve, ReplicationValve, RequestFilterValve, SemaphoreValve, SingleSignOn, SpnegoAuthenticator, SSLAuthenticator, SSLValve, StuckThreadDetectionValve, ValveBase

public interface Valve

A Valve is a request processing component associated with a particular Container. A series of Valves are generally associated with each other into a Pipeline. The detailed contract for a Valve is included in the description of the invoke() method below.

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:
$Id: Valve.java 987920 2010-08-22 15:34:34Z markt $
Author:
Craig R. McClanahan, Gunnar Rjnning, Peter Donald

Method Summary
 void backgroundProcess()
          Execute a periodic task, such as reloading, etc.
 void event(Request request, Response response, CometEvent event)
          Process a Comet event.
 String getInfo()
          Return descriptive information about this Valve implementation.
 Valve getNext()
          Return the next Valve in the pipeline containing this Valve, if any.
 void invoke(Request request, Response response)
          Perform request processing as required by this Valve.
 boolean isAsyncSupported()
           
 void setNext(Valve valve)
          Set the next Valve in the pipeline containing this Valve.
 

Method Detail

getInfo

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


getNext

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


setNext

void setNext(Valve valve)
Set the next Valve in the pipeline containing this Valve.

Parameters:
valve - The new next valve, or null if none

backgroundProcess

void backgroundProcess()
Execute a periodic task, such as reloading, etc. This method will be invoked inside the classloading context of this container. Unexpected throwables will be caught and logged.


invoke

void invoke(Request request,
            Response response)
            throws IOException,
                   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:
IOException - if an input/output error occurs, or is thrown by a subsequently invoked Valve, Filter, or Servlet
ServletException - if a servlet error occurs, or is thrown by a subsequently invoked Valve, Filter, or Servlet

event

void event(Request request,
           Response response,
           CometEvent event)
           throws IOException,
                  ServletException
Process a Comet event.

Parameters:
request - The servlet request to be processed
response - The servlet response to be created
Throws:
IOException - if an input/output error occurs, or is thrown by a subsequently invoked Valve, Filter, or Servlet
ServletException - if a servlet error occurs, or is thrown by a subsequently invoked Valve, Filter, or Servlet

isAsyncSupported

boolean isAsyncSupported()

Apache Tomcat 7.0.28

Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.