View Javadoc
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: DelegatingInterceptor.java,v 1.3 2003/03/05 04:31:57 michaelh Exp $ 20 */ 21 22 package juju.reattore.server.intercept.impl; 23 24 import java.util.*; 25 26 import juju.reattore.protocol.http.*; 27 import juju.reattore.server.intercept.Interceptor; 28 29 /*** Interceptor that delegates to child interceptors in the order that 30 they were added. 31 32 @tag delegator 33 @group Interceptor 34 @children Interceptor 35 */ 36 public class DelegatingInterceptor 37 implements Interceptor { 38 39 private List children = new ArrayList(); 40 41 /*** Adds a new child to delegate to. 42 43 @param child The interceptor to add. 44 */ 45 public void addChild(Interceptor child) { 46 children.add(child); 47 } 48 49 /*** @see Interceptor */ 50 public boolean process(HttpRequest req, HttpResponse resp) { 51 52 /* Where's my map function, eh? */ 53 for (Iterator i = children.iterator(); i.hasNext();) { 54 Interceptor in = (Interceptor)i.next(); 55 56 if (in.process(req, resp)) { 57 return true; 58 } 59 } 60 61 return false; 62 } 63 }

This page was automatically generated by Maven