首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Tomcat4 容易wrapper责任链

2012-11-08 
Tomcat4 简单wrapper责任链TOMCAT4容器的责任链public class SimplePipeline implements Pipeline {public

Tomcat4 简单wrapper责任链
TOMCAT4容器的责任链

public class SimplePipeline implements Pipeline {  public SimplePipeline(Container container) {    setContainer(container);  }  protected Valve basic = null;    protected Container container = null;  protected Valve valves[] = new Valve[0];  public void addValve(Valve valve) {    if (valve instanceof Contained)      ((Contained) valve).setContainer(this.container);    synchronized (valves) {      Valve results[] = new Valve[valves.length +1];      System.arraycopy(valves, 0, results, 0, valves.length);      results[valves.length] = valve;      valves = results;    }  }  public void invoke(Request request, Response response)    throws IOException, ServletException {        (new SimplePipelineValveContext()).invokeNext(request, response);  }  protected class SimplePipelineValveContext implements ValveContext {    protected int stage = 0;    public void invokeNext(Request request, Response response)      throws IOException, ServletException {      int subscript = stage;      stage = stage + 1;         if (subscript < valves.length) {        valves[subscript].invoke(request, response, this);      }      else if ((subscript == valves.length) && (basic != null)) {        basic.invoke(request, response, this);      }      else {        throw new ServletException("No valve");      }    }  }}



热点排行