Class DaemonWrapper

java.lang.Object
org.apache.commons.daemon.support.DaemonWrapper
All Implemented Interfaces:
Daemon

public class DaemonWrapper extends Object implements Daemon
Implementation of the Daemon that allows running standard applications as daemons. The applications must have the mechanism to manage the application lifecycle.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new initialized instance.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Frees any resources allocated by this daemon such as file descriptors or sockets.
    void
    Called from DaemonLoader on init stage.
    void
    Starts the operation of this Daemon instance.
    void
    Stops the operation of this Daemon instance.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DaemonWrapper

      public DaemonWrapper()
      Constructs a new initialized instance.
  • Method Details

    • init

      public void init(DaemonContext context) throws Exception
      Called from DaemonLoader on init stage.

      Accepts the following configuration arguments:

      • -daemon-properties: - load DaemonConfiguration properties from the specified file to act as defaults
      • -start: set start class name
      • -start-method: set start method name
      • -stop: set stop class name
      • -stop-method: set stop method name
      • -stop-argument: set optional argument to stop method
      • Anything else is treated as a startup argument

      The following "-daemon-properties" are recognized:

      • args (startup argument)
      • start
      • start.method
      • stop
      • stop.method
      • stop.args
      These are used to set the corresponding item if it has not already been set by the command arguments. However, note that args and stop.args are appended to any existing values.
      Specified by:
      init in interface Daemon
      Parameters:
      context - A DaemonContext object used to communicate with the container.
      Throws:
      Exception - Any exception preventing a successful initialization.
    • start

      public void start() throws Exception
      Description copied from interface: Daemon
      Starts the operation of this Daemon instance. This method is to be invoked by the environment after the init() method has been successfully invoked and possibly the security level of the JVM has been dropped. Implementors of this method are free to start any number of threads, but need to return control after having done that to enable invocation of the stop()-method.
      Specified by:
      start in interface Daemon
      Throws:
      Exception - If the start was not successful
    • stop

      public void stop() throws Exception
      Description copied from interface: Daemon
      Stops the operation of this Daemon instance. Note that the proper place to free any allocated resources such as sockets or file descriptors is in the destroy method, as the container may restart the Daemon by calling start() after stop().
      Specified by:
      stop in interface Daemon
      Throws:
      Exception - If the stop was not successful
    • destroy

      public void destroy()
      Description copied from interface: Daemon
      Frees any resources allocated by this daemon such as file descriptors or sockets. This method gets called by the container after stop() has been called, before the JVM exits. The Daemon cannot be restarted after this method has been called without a new call to the init() method.
      Specified by:
      destroy in interface Daemon