1 package com.instantbank.collections.util;
2
3 import java.util.Iterator;
4 import java.util.Vector;
5 import javax.servlet.http.HttpServletRequest;
6 import javax.servlet.http.HttpServletResponse;
7 import javax.servlet.ServletContext;
8
9 public class FilterChain extends Object {
10 private Vector filters = new Vector();
11
12
13 public FilterChain(boolean requiresCompany, ServletContext sc) {
14 SessionFilter sf;
15
16 sf = new SessionFilter();
17 if(!requiresCompany) {
18 sf.clearRequiresCompany();
19 }
20 sf.setServletContext(sc);
21 addFilter(sf);
22 }
23
24
25 public boolean processFilter(HttpServletRequest request, HttpServletResponse response) throws InstantbankException {
26 Filter filter;
27
28 Iterator it = filters.iterator();
29 while(it.hasNext()) {
30 filter = (Filter)it.next();
31 if(filter.execute(request, response)) {
32 return true;
33 }
34 }
35 return false;
36 }
37
38
39 public void addFilter(Filter filter) {
40 filters.add(filter);
41 }
42 }
43
44