Package sunlabs.brazil.sunlabs
Class RestartHandler
- java.lang.Object
-
- sunlabs.brazil.sunlabs.RestartHandler
-
- All Implemented Interfaces:
sun.misc.SignalHandler,Handler
public class RestartHandler extends java.lang.Object implements Handler, sun.misc.SignalHandler
Restart the server when a sigHUP is received. Only The handlers are restarted, by creating new instances of them, and calling the respective init() methods. None of the other server properties (such as the listening port) are effected. Any requests that are currently in-progress complete using the old configuration.NOTES:
- Supplying an invalid configuration file can render the server inoperable.
- The non-portable
sun.misc.Signal*classes are used.
Properties:
- config
- The name of the configuration file to use for this server. Relative paths are resolved relative to the current directory. If no file is specified, the server continues to use its existing configuration [which has presumably been modified in-place]. If a config file is specified and the config file hasn't changed, then no restart is done.
- keep
- If set, and a config file is specified, the existing configuration (server.props) is not cleared first.
-
-
Constructor Summary
Constructors Constructor Description RestartHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidhandle(sun.misc.Signal sig)Restart the server after re-reading the config filebooleaninit(Server server, java.lang.String prefix)Initializes the handler.booleanrespond(Request request)Responds to an HTTP request.
-
-
-
Method Detail
-
init
public boolean init(Server server, java.lang.String prefix)
Description copied from interface:HandlerInitializes the handler.- Specified by:
initin interfaceHandler- Parameters:
server- The HTTP server that created thisHandler. TypicalHandlers will useServer.propsto obtain run-time configuration information.prefix- The handlers name. The string thisHandlermay prepend to all of the keys that it uses to extract configuration information fromServer.props. This is set (by theServerandChainHandler) to help avoid configuration parameter namespace collisions.- Returns:
trueif thisHandlerinitialized successfully,falseotherwise. Iffalseis returned, thisHandlershould not be used.
-
respond
public boolean respond(Request request)
Description copied from interface:HandlerResponds to an HTTP request.
-
handle
public void handle(sun.misc.Signal sig)
Restart the server after re-reading the config file- Specified by:
handlein interfacesun.misc.SignalHandler
-
-