# File lib/daemons/application.rb, line 26
    def initialize(group, add_options = {}, pid = nil)
      @group = group
      @options = group.options.dup
      @options.update(add_options)

      ['dir', 'log_dir', 'logfilename', 'output_logfilename'].each do |k|
        @options[k] = File.expand_path(@options[k]) if @options.key?(k)
      end

      @dir_mode = @dir = @script = nil

      @force_kill_waittime = @options[:force_kill_waittime] || 20

      @show_status_callback = method(:default_show_status)

      @report = Reporter.new(@options)

      unless @pid = pid
        if @options[:no_pidfiles]
          @pid = PidMem.new
        elsif dir = pidfile_dir
          @pid = PidFile.new(dir, @group.app_name, @group.multiple, @options[:pid_delimiter])
        else
          @pid = PidMem.new
        end
      end
    end