pier        00/12/08 01:39:54

  Modified:    catalina/src/share/org/apache/catalina/connector/warp
                        WarpHost.java
  Log:
  Added methods for invoking requests within Catalina.
  
  Revision  Changes    Path
  1.2       +39 -1     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/WarpHost.java
  
  Index: WarpHost.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/WarpHost.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- WarpHost.java     2000/12/07 21:12:56     1.1
  +++ WarpHost.java     2000/12/08 09:39:54     1.2
  @@ -57,7 +57,12 @@
   package org.apache.catalina.connector.warp;
   
   import java.io.IOException;
  +import java.net.URL;
  +import org.apache.catalina.Container;
   import org.apache.catalina.core.StandardHost;
  +import org.apache.catalina.core.StandardContext;
  +import org.apache.catalina.startup.HostConfig;
  +import org.apache.catalina.LifecycleException;
   
   /**
    *
  @@ -65,7 +70,7 @@
    * @author <a href="mailto:[EMAIL PROTECTED]">Pier Fumagalli</a>
    * @author Copyright &copy; 1999, 2000 <a href="http://www.apache.org">The
    *         Apache Software Foundation.
  - * @version CVS $Id: WarpHost.java,v 1.1 2000/12/07 21:12:56 pier Exp $
  + * @version CVS $Id: WarpHost.java,v 1.2 2000/12/08 09:39:54 pier Exp $
    */
   public class WarpHost extends StandardHost {
   
  @@ -73,11 +78,44 @@
   
       /** Our debug flag status (Used to compile out debugging information). */
       private static final boolean DEBUG=WarpDebug.DEBUG;
  +    /** The class used for contexts. */
  +    private static String cc="org.apache.catalina.connector.warp.WarpContext";
   
       // -------------------------------------------------------- LOCAL VARIABLES
   
       /** The Warp Host ID of this Host. */
       private int id=-1;
  +    /** The ID to use for the next dynamically configured application. */
  +    private int applid=0;
  +
  +    // --------------------------------------------------------- PUBLIC METHODS
  +
  +    /**
  +     * Create a new instance of a WarpHost.
  +     */
  +    public WarpHost() {
  +        super();
  +        HostConfig conf=new HostConfig();
  +        conf.setContextClass(cc);
  +        this.setContextClass(cc);
  +        this.addLifecycleListener(conf);
  +    }
  +
  +    /**
  +     * Add a new context to this host.
  +     */
  +    public void addChild(Container container) {
  +        if (container instanceof WarpContext) {
  +            WarpContext cont=(WarpContext)container;
  +            cont.setApplicationID(this.applid++);
  +            if (DEBUG) this.debug("Adding context for path \""+cont.getName()+
  +                                  "\" with ID="+cont.getApplicationID());
  +            super.addChild(cont);
  +        } else {
  +            throw new IllegalArgumentException("Cannot add context class "+
  +                             container.getClass().getName()+" to WarpContext");
  +        }
  +    }
   
       // ----------------------------------------------------------- BEAN METHODS
   
  
  
  

Reply via email to