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 © 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