Class DaemonConfiguration


  • public final class DaemonConfiguration
    extends Object
    Used by jsvc for Daemon configuration.

    Configuration is read from properties file. If no properties file is given the daemon.properties is used from the current directory.

    The properties file can have property values expanded at runtime by using System properties or execution environment. The part of the property value between ${} and {@code } will be used as System property or environment key. If found then the entire ${foo} will be replaced by the value of either system property or environment variable named foo.

    If no variable is found the ${foo} will be passed as is. In case of $${foo} this will be unescaped and resulting value will be ${foo}.

    • Constructor Detail

      • DaemonConfiguration

        public DaemonConfiguration()
        Default constructor
    • Method Detail

      • load

        public boolean load​(String fileName)
        Loads the configuration properties file.
        Parameters:
        fileName - The properties file to load.
        Returns:
        true if the file was loaded.
      • getProperty

        public String getProperty​(String name)
                           throws ParseException
        Gets the configuration property.
        Parameters:
        name - The name of the property to get.
        Returns:
        Configuration property including any expansion/replacement
        Throws:
        ParseException - if the property is wrongly formatted.
      • getPropertyArray

        public String[] getPropertyArray​(String name)
                                  throws ParseException
        Gets the configuration property array.

        Property array is constructed form the list of properties which end with [index]

         daemon.arg[0] = argument 1
         daemon.arg[1] = argument 2
         daemon.arg[2] = argument 3
         
        Parameters:
        name - The name of the property array to get.
        Returns:
        Configuration property array including any expansion/replacement
        Throws:
        ParseException - if the property is wrongly formatted.