--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">\r
+<!--NewPage-->\r
+<HTML>\r
+<HEAD>\r
+<!-- Generated by javadoc (build 1.5.0_11) on Tue Apr 10 15:02:12 UTC 2007 -->\r
+<TITLE>\r
+ServerHandlerManager\r
+</TITLE>\r
+\r
+<META NAME="keywords" CONTENT="org.w3c.jigsaw.daemon.ServerHandlerManager class">\r
+\r
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">\r
+\r
+<SCRIPT type="text/javascript">\r
+function windowTitle()\r
+{\r
+ parent.document.title="ServerHandlerManager";\r
+}\r
+</SCRIPT>\r
+<NOSCRIPT>\r
+</NOSCRIPT>\r
+\r
+</HEAD>\r
+\r
+<BODY BGCOLOR="white" onload="windowTitle();">\r
+\r
+\r
+<!-- ========= START OF TOP NAVBAR ======= -->\r
+<A NAME="navbar_top"><!-- --></A>\r
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>\r
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">\r
+<TR>\r
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">\r
+<A NAME="navbar_top_firstrow"><!-- --></A>\r
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">\r
+ <TR ALIGN="center" VALIGN="top">\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>\r
+ </TR>\r
+</TABLE>\r
+</TD>\r
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>\r
+</EM>\r
+</TD>\r
+</TR>\r
+\r
+<TR>\r
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">\r
+ <A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerInitException.html" title="class in org.w3c.jigsaw.daemon"><B>PREV CLASS</B></A> \r
+ NEXT CLASS</FONT></TD>\r
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">\r
+ <A HREF="../../../../index.html?org/w3c/jigsaw/daemon/ServerHandlerManager.html" target="_top"><B>FRAMES</B></A> \r
+ <A HREF="ServerHandlerManager.html" target="_top"><B>NO FRAMES</B></A> \r
+ <SCRIPT type="text/javascript">\r
+ <!--\r
+ if(window==top) {\r
+ document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');\r
+ }\r
+ //-->\r
+</SCRIPT>\r
+<NOSCRIPT>\r
+ <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>\r
+</NOSCRIPT>\r
+\r
+\r
+</FONT></TD>\r
+</TR>\r
+<TR>\r
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">\r
+ SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>\r
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">\r
+DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>\r
+</TR>\r
+</TABLE>\r
+<A NAME="skip-navbar_top"></A>\r
+<!-- ========= END OF TOP NAVBAR ========= -->\r
+\r
+<HR>\r
+<!-- ======== START OF CLASS DATA ======== -->\r
+<H2>\r
+<FONT SIZE="-1">\r
+org.w3c.jigsaw.daemon</FONT>\r
+<BR>\r
+Class ServerHandlerManager</H2>\r
+<PRE>\r
+java.lang.Object\r
+ <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.w3c.jigsaw.daemon.ServerHandlerManager</B>\r
+</PRE>\r
+<HR>\r
+<DL>\r
+<DT><PRE>public class <B>ServerHandlerManager</B><DT>extends java.lang.Object</DL>\r
+</PRE>\r
+\r
+<P>\r
+A ServerHandlerManager instance manages a set of ServerHandler.\r
+<P>\r
+\r
+<P>\r
+<HR>\r
+\r
+<P>\r
+<!-- =========== FIELD SUMMARY =========== -->\r
+\r
+<A NAME="field_summary"><!-- --></A>\r
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">\r
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">\r
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">\r
+<B>Field Summary</B></FONT></TH>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>static java.lang.String</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#CLASS_P">CLASS_P</A></B></CODE>\r
+\r
+<BR>\r
+ The server handler property <code>class</code> suffix.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>static java.lang.String</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#CLONES_P">CLONES_P</A></B></CODE>\r
+\r
+<BR>\r
+ The server handler property <code>clones</code> prefix.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected java.lang.String[]</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#commandLine">commandLine</A></B></CODE>\r
+\r
+<BR>\r
+ Command line options that were provided at launch time.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected java.util.Hashtable</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#handlers">handlers</A></B></CODE>\r
+\r
+<BR>\r
+ The list of running server handlers.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected static java.lang.String</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#HANDLERS_P">HANDLERS_P</A></B></CODE>\r
+\r
+<BR>\r
+ The property containing the servers to be launched at startup time.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected static <A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html" title="class in org.w3c.jigsaw.daemon">ServerHandlerManager</A></CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#manager">manager</A></B></CODE>\r
+\r
+<BR>\r
+ The Application-Wide server manager.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected <A HREF="../../../../org/w3c/jigsaw/daemon/DaemonProperties.html" title="class in org.w3c.jigsaw.daemon">DaemonProperties</A></CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#props">props</A></B></CODE>\r
+\r
+<BR>\r
+ The server handler manager property list.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>static java.lang.String</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#SERVER_GROUP_P">SERVER_GROUP_P</A></B></CODE>\r
+\r
+<BR>\r
+ </TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>static java.lang.String</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#SERVER_USER_P">SERVER_USER_P</A></B></CODE>\r
+\r
+<BR>\r
+ </TD>\r
+</TR>\r
+</TABLE>\r
+ \r
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->\r
+\r
+<A NAME="constructor_summary"><!-- --></A>\r
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">\r
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">\r
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">\r
+<B>Constructor Summary</B></FONT></TH>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#ServerHandlerManager(java.lang.String[], java.io.File, java.util.Properties)">ServerHandlerManager</A></B>(java.lang.String[] args,\r
+ java.io.File config,\r
+ java.util.Properties p)</CODE>\r
+\r
+<BR>\r
+ Create and initialize a fresh server handler manager.</TD>\r
+</TR>\r
+</TABLE>\r
+ \r
+<!-- ========== METHOD SUMMARY =========== -->\r
+\r
+<A NAME="method_summary"><!-- --></A>\r
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">\r
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">\r
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">\r
+<B>Method Summary</B></FONT></TH>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE> java.util.Enumeration</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#enumerateServerHandlers()">enumerateServerHandlers</A></B>()</CODE>\r
+\r
+<BR>\r
+ Enumerate all the server handler manager's identifiers.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#error(java.lang.String)">error</A></B>(java.lang.String msg)</CODE>\r
+\r
+<BR>\r
+ Emit a non-fatal error.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#fatal(java.lang.String)">fatal</A></B>(java.lang.String msg)</CODE>\r
+\r
+<BR>\r
+ Emit a fatal error.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#fixProperties(java.util.Properties)">fixProperties</A></B>(java.util.Properties p)</CODE>\r
+\r
+<BR>\r
+ For subclasses only.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE> java.lang.String[]</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#getCommandLine()">getCommandLine</A></B>()</CODE>\r
+\r
+<BR>\r
+ Get the command line options that were provided at launch time.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>protected void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#launchServerHandler(java.lang.String, org.w3c.jigsaw.daemon.DaemonProperties)">launchServerHandler</A></B>(java.lang.String id,\r
+ <A HREF="../../../../org/w3c/jigsaw/daemon/DaemonProperties.html" title="class in org.w3c.jigsaw.daemon">DaemonProperties</A> props)</CODE>\r
+\r
+<BR>\r
+ Launch a new server handler.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE> <A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandler.html" title="interface in org.w3c.jigsaw.daemon">ServerHandler</A></CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#lookupServerHandler(java.lang.String)">lookupServerHandler</A></B>(java.lang.String id)</CODE>\r
+\r
+<BR>\r
+ Lookup the server handler having the given identifier.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>static void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#main(java.lang.String[])">main</A></B>(java.lang.String[] args)</CODE>\r
+\r
+<BR>\r
+ </TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE> void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#removeServerHandler(org.w3c.jigsaw.daemon.ServerHandler)">removeServerHandler</A></B>(<A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandler.html" title="interface in org.w3c.jigsaw.daemon">ServerHandler</A> server)</CODE>\r
+\r
+<BR>\r
+ Remove a server handler from this manager</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE> void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#shutdown()">shutdown</A></B>()</CODE>\r
+\r
+<BR>\r
+ Shutdown this server handler manager.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE> void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#unixStuff()">unixStuff</A></B>()</CODE>\r
+\r
+<BR>\r
+ Do some UNIX specific initialization.</TD>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">\r
+<CODE>static void</CODE></FONT></TD>\r
+<TD><CODE><B><A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html#usage()">usage</A></B>()</CODE>\r
+\r
+<BR>\r
+ </TD>\r
+</TR>\r
+</TABLE>\r
+ <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>\r
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">\r
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">\r
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>\r
+</TR>\r
+<TR BGCOLOR="white" CLASS="TableRowColor">\r
+<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>\r
+</TR>\r
+</TABLE>\r
+ \r
+<P>\r
+\r
+<!-- ============ FIELD DETAIL =========== -->\r
+\r
+<A NAME="field_detail"><!-- --></A>\r
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">\r
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">\r
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">\r
+<B>Field Detail</B></FONT></TH>\r
+</TR>\r
+</TABLE>\r
+\r
+<A NAME="HANDLERS_P"><!-- --></A><H3>\r
+HANDLERS_P</H3>\r
+<PRE>\r
+protected static final java.lang.String <B>HANDLERS_P</B></PRE>\r
+<DL>\r
+<DD>The property containing the servers to be launched at startup time.\r
+ This property is a <code>|</code> separated list of server identifiers.\r
+ Declaring a server to this list requires that either:\r
+ <ul>\r
+ <li>An appropriate\r
+ <code>org.w3c.jigsaw.daemon.</code><em>identifier</em>.<code>class\r
+</code>\r
+ is declared and specify the class of the server to be launched (this \r
+ class should implement the ServerHandler interface.).\r
+ <li>An appropriate\r
+ <code>org.w3c.jigsaw.daemon.</code><em>identifier</em>.<code>clones\r
+</code>\r
+ is declared and its value specify an existing server to be cloned in \r
+ order to create the new server.\r
+ </ul>\r
+<P>\r
+<DL>\r
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.w3c.jigsaw.daemon.ServerHandlerManager.HANDLERS_P">Constant Field Values</A></DL>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="CLASS_P"><!-- --></A><H3>\r
+CLASS_P</H3>\r
+<PRE>\r
+public static final java.lang.String <B>CLASS_P</B></PRE>\r
+<DL>\r
+<DD>The server handler property <code>class</code> suffix.\r
+<P>\r
+<DL>\r
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.w3c.jigsaw.daemon.ServerHandlerManager.CLASS_P">Constant Field Values</A></DL>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="CLONES_P"><!-- --></A><H3>\r
+CLONES_P</H3>\r
+<PRE>\r
+public static final java.lang.String <B>CLONES_P</B></PRE>\r
+<DL>\r
+<DD>The server handler property <code>clones</code> prefix.\r
+<P>\r
+<DL>\r
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.w3c.jigsaw.daemon.ServerHandlerManager.CLONES_P">Constant Field Values</A></DL>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="SERVER_USER_P"><!-- --></A><H3>\r
+SERVER_USER_P</H3>\r
+<PRE>\r
+public static final java.lang.String <B>SERVER_USER_P</B></PRE>\r
+<DL>\r
+<DL>\r
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.w3c.jigsaw.daemon.ServerHandlerManager.SERVER_USER_P">Constant Field Values</A></DL>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="SERVER_GROUP_P"><!-- --></A><H3>\r
+SERVER_GROUP_P</H3>\r
+<PRE>\r
+public static final java.lang.String <B>SERVER_GROUP_P</B></PRE>\r
+<DL>\r
+<DL>\r
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.w3c.jigsaw.daemon.ServerHandlerManager.SERVER_GROUP_P">Constant Field Values</A></DL>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="manager"><!-- --></A><H3>\r
+manager</H3>\r
+<PRE>\r
+protected static <A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerManager.html" title="class in org.w3c.jigsaw.daemon">ServerHandlerManager</A> <B>manager</B></PRE>\r
+<DL>\r
+<DD>The Application-Wide server manager.\r
+<P>\r
+<DL>\r
+</DL>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="handlers"><!-- --></A><H3>\r
+handlers</H3>\r
+<PRE>\r
+protected java.util.Hashtable <B>handlers</B></PRE>\r
+<DL>\r
+<DD>The list of running server handlers.\r
+<P>\r
+<DL>\r
+</DL>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="props"><!-- --></A><H3>\r
+props</H3>\r
+<PRE>\r
+protected <A HREF="../../../../org/w3c/jigsaw/daemon/DaemonProperties.html" title="class in org.w3c.jigsaw.daemon">DaemonProperties</A> <B>props</B></PRE>\r
+<DL>\r
+<DD>The server handler manager property list.\r
+<P>\r
+<DL>\r
+</DL>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="commandLine"><!-- --></A><H3>\r
+commandLine</H3>\r
+<PRE>\r
+protected java.lang.String[] <B>commandLine</B></PRE>\r
+<DL>\r
+<DD>Command line options that were provided at launch time.\r
+<P>\r
+<DL>\r
+</DL>\r
+</DL>\r
+\r
+<!-- ========= CONSTRUCTOR DETAIL ======== -->\r
+\r
+<A NAME="constructor_detail"><!-- --></A>\r
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">\r
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">\r
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">\r
+<B>Constructor Detail</B></FONT></TH>\r
+</TR>\r
+</TABLE>\r
+\r
+<A NAME="ServerHandlerManager(java.lang.String[], java.io.File, java.util.Properties)"><!-- --></A><H3>\r
+ServerHandlerManager</H3>\r
+<PRE>\r
+public <B>ServerHandlerManager</B>(java.lang.String[] args,\r
+ java.io.File config,\r
+ java.util.Properties p)</PRE>\r
+<DL>\r
+<DD>Create and initialize a fresh server handler manager.\r
+ Each server handler declared in the properties is launched in turn.\r
+ If no server handlers is declared, or if none of them is initializable\r
+ the server manager is not created and a RuntimeException is thrown,\r
+ otherwise, if at least one server handler was initialized, the server\r
+ manager emits appropriate error messages to the error stream for each\r
+ of the server handlers whose launch failed.\r
+<P>\r
+<DL>\r
+<DT><B>Parameters:</B><DD><CODE>props</CODE> - The properties this manager should be initialized from.\r
+<DT><B>Throws:</B>\r
+<DD><CODE>java.lang.RuntimeException</CODE> - If no server handlers was declared through\r
+ the properties.</DL>\r
+</DL>\r
+\r
+<!-- ============ METHOD DETAIL ========== -->\r
+\r
+<A NAME="method_detail"><!-- --></A>\r
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">\r
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">\r
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">\r
+<B>Method Detail</B></FONT></TH>\r
+</TR>\r
+</TABLE>\r
+\r
+<A NAME="error(java.lang.String)"><!-- --></A><H3>\r
+error</H3>\r
+<PRE>\r
+protected void <B>error</B>(java.lang.String msg)</PRE>\r
+<DL>\r
+<DD>Emit a non-fatal error.\r
+<P>\r
+<DD><DL>\r
+<DT><B>Parameters:</B><DD><CODE>msg</CODE> - The message to emit.</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="fatal(java.lang.String)"><!-- --></A><H3>\r
+fatal</H3>\r
+<PRE>\r
+protected void <B>fatal</B>(java.lang.String msg)</PRE>\r
+<DL>\r
+<DD>Emit a fatal error.\r
+ This will abort the whole process !\r
+<P>\r
+<DD><DL>\r
+<DT><B>Parameters:</B><DD><CODE>msg</CODE> - The fata error message.</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="getCommandLine()"><!-- --></A><H3>\r
+getCommandLine</H3>\r
+<PRE>\r
+public java.lang.String[] <B>getCommandLine</B>()</PRE>\r
+<DL>\r
+<DD>Get the command line options that were provided at launch time.\r
+<P>\r
+<DD><DL>\r
+\r
+<DT><B>Returns:</B><DD>A String array instance.</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="fixProperties(java.util.Properties)"><!-- --></A><H3>\r
+fixProperties</H3>\r
+<PRE>\r
+protected void <B>fixProperties</B>(java.util.Properties p)</PRE>\r
+<DL>\r
+<DD>For subclasses only. Used to update properties at runtime.\r
+ This method is called by \r
+ launchServerHandler(String id, DaemonProperties props).\r
+<P>\r
+<DD><DL>\r
+<DT><B>Parameters:</B><DD><CODE>p</CODE> - the ServerHandlerManager properties.<DT><B>See Also:</B><DD><CODE>launchServerHandler</CODE></DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="launchServerHandler(java.lang.String, org.w3c.jigsaw.daemon.DaemonProperties)"><!-- --></A><H3>\r
+launchServerHandler</H3>\r
+<PRE>\r
+protected void <B>launchServerHandler</B>(java.lang.String id,\r
+ <A HREF="../../../../org/w3c/jigsaw/daemon/DaemonProperties.html" title="class in org.w3c.jigsaw.daemon">DaemonProperties</A> props)</PRE>\r
+<DL>\r
+<DD>Launch a new server handler.\r
+ This method tries to launch a new server handler. If launching\r
+ succeeds, it returns happily, otherwise, it emits an error message\r
+ to the standard error stream.\r
+<P>\r
+<DD><DL>\r
+<DT><B>Parameters:</B><DD><CODE>identifier</CODE> - The identifier of the server handler to be launched.<DD><CODE>props</CODE> - The properties from which the server handler should\r
+ initialize itself.</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="lookupServerHandler(java.lang.String)"><!-- --></A><H3>\r
+lookupServerHandler</H3>\r
+<PRE>\r
+public <A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandler.html" title="interface in org.w3c.jigsaw.daemon">ServerHandler</A> <B>lookupServerHandler</B>(java.lang.String id)</PRE>\r
+<DL>\r
+<DD>Lookup the server handler having the given identifier.\r
+<P>\r
+<DD><DL>\r
+<DT><B>Parameters:</B><DD><CODE>id</CODE> - The identifier of the server handler to look for.\r
+<DT><B>Returns:</B><DD>A ServerHandler instance, or <strong>null</strong> if\r
+ undefined.</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="enumerateServerHandlers()"><!-- --></A><H3>\r
+enumerateServerHandlers</H3>\r
+<PRE>\r
+public java.util.Enumeration <B>enumerateServerHandlers</B>()</PRE>\r
+<DL>\r
+<DD>Enumerate all the server handler manager's identifiers.\r
+<P>\r
+<DD><DL>\r
+\r
+<DT><B>Returns:</B><DD>An enumeration of String.</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="removeServerHandler(org.w3c.jigsaw.daemon.ServerHandler)"><!-- --></A><H3>\r
+removeServerHandler</H3>\r
+<PRE>\r
+public void <B>removeServerHandler</B>(<A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandler.html" title="interface in org.w3c.jigsaw.daemon">ServerHandler</A> server)</PRE>\r
+<DL>\r
+<DD>Remove a server handler from this manager\r
+<P>\r
+<DD><DL>\r
+<DT><B>Parameters:</B><DD><CODE>server,</CODE> - the Server Handler to remove</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="shutdown()"><!-- --></A><H3>\r
+shutdown</H3>\r
+<PRE>\r
+public void <B>shutdown</B>()</PRE>\r
+<DL>\r
+<DD>Shutdown this server handler manager.\r
+ This method will call the shutdown method of all the running servers\r
+ stopping the manager.\r
+ <p>This server handler clones are considered shutdown too.\r
+<P>\r
+<DD><DL>\r
+</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="unixStuff()"><!-- --></A><H3>\r
+unixStuff</H3>\r
+<PRE>\r
+public void <B>unixStuff</B>()</PRE>\r
+<DL>\r
+<DD>Do some UNIX specific initialization.\r
+ THis method exists straight if it cannot succeed !\r
+<P>\r
+<DD><DL>\r
+</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="usage()"><!-- --></A><H3>\r
+usage</H3>\r
+<PRE>\r
+public static void <B>usage</B>()</PRE>\r
+<DL>\r
+<DD><DL>\r
+</DL>\r
+</DD>\r
+</DL>\r
+<HR>\r
+\r
+<A NAME="main(java.lang.String[])"><!-- --></A><H3>\r
+main</H3>\r
+<PRE>\r
+public static void <B>main</B>(java.lang.String[] args)</PRE>\r
+<DL>\r
+<DD><DL>\r
+</DL>\r
+</DD>\r
+</DL>\r
+<!-- ========= END OF CLASS DATA ========= -->\r
+<HR>\r
+\r
+\r
+<!-- ======= START OF BOTTOM NAVBAR ====== -->\r
+<A NAME="navbar_bottom"><!-- --></A>\r
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>\r
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">\r
+<TR>\r
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">\r
+<A NAME="navbar_bottom_firstrow"><!-- --></A>\r
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">\r
+ <TR ALIGN="center" VALIGN="top">\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>\r
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>\r
+ </TR>\r
+</TABLE>\r
+</TD>\r
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>\r
+</EM>\r
+</TD>\r
+</TR>\r
+\r
+<TR>\r
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">\r
+ <A HREF="../../../../org/w3c/jigsaw/daemon/ServerHandlerInitException.html" title="class in org.w3c.jigsaw.daemon"><B>PREV CLASS</B></A> \r
+ NEXT CLASS</FONT></TD>\r
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">\r
+ <A HREF="../../../../index.html?org/w3c/jigsaw/daemon/ServerHandlerManager.html" target="_top"><B>FRAMES</B></A> \r
+ <A HREF="ServerHandlerManager.html" target="_top"><B>NO FRAMES</B></A> \r
+ <SCRIPT type="text/javascript">\r
+ <!--\r
+ if(window==top) {\r
+ document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');\r
+ }\r
+ //-->\r
+</SCRIPT>\r
+<NOSCRIPT>\r
+ <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>\r
+</NOSCRIPT>\r
+\r
+\r
+</FONT></TD>\r
+</TR>\r
+<TR>\r
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">\r
+ SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>\r
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">\r
+DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>\r
+</TR>\r
+</TABLE>\r
+<A NAME="skip-navbar_bottom"></A>\r
+<!-- ======== END OF BOTTOM NAVBAR ======= -->\r
+\r
+<HR>\r
+\r
+</BODY>\r
+</HTML>\r