Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: juju/reattore/server/intercept/Interceptor.java


1   /*  Reattore HTTP Server
2   
3       Copyright (C) 2002 Michael Hope <michaelh@juju.net.nz>
4   
5       This program is free software; you can redistribute it and/or modify
6       it under the terms of the GNU General Public License as published by
7       the Free Software Foundation; either version 2 of the License, or
8       (at your option) any later version.
9   
10      This program is distributed in the hope that it will be useful,
11      but WITHOUT ANY WARRANTY; without even the implied warranty of
12      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13      GNU General Public License for more details.
14  
15      You should have received a copy of the GNU General Public License
16      along with this program; if not, write to the Free Software
17      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18  
19      $Id: Interceptor.java,v 1.2 2003/01/21 22:43:11 michaelh Exp $
20  */
21  
22  package juju.reattore.server.intercept;
23  
24  import juju.reattore.protocol.http.*;
25  
26  /** An Interceptor is a module that is given a chance to process an
27      incomming request and to respond to it.  The Interceptor can do
28      any combination of passing the request on, causing a side effect
29      on the response such as adding a header, or supply the response
30      body.
31  */
32  public interface Interceptor {
33  
34      /** Process an incoming HTTP request if possible, filling in the
35          given response as it goes.  An interceptor may have side
36          effects without actually performing the main processing and
37          may pass it on to another interceptor.  A authentication
38          interceptor is a good example.      
39  
40          @param req   HTTP request to process
41          @param resp  Response to fill in
42          @return true if the request was recognised and processed.
43      */ 
44      boolean process(HttpRequest req, HttpResponse resp);
45  }