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