class Daemons::Rails::Config

Public Class Methods

for_controller(controller_path, root = Daemons::Rails.configuration.root) click to toggle source
# File lib/daemons/rails/config.rb, line 20
def self.for_controller(controller_path, root = Daemons::Rails.configuration.root)
  new(File.basename(controller_path, '_ctl'), root, Pathname.new(controller_path).parent.relative_path_from(root))
end
new(app_name, root_path, daemons_dir = File.join('lib', 'daemons')) click to toggle source
# File lib/daemons/rails/config.rb, line 10
def initialize(app_name, root_path, daemons_dir = File.join('lib', 'daemons'))
  @options = {}
  config_path = File.join(root_path, "config", "#{app_name}-daemon.yml")
  config_path = File.join(root_path, "config", "daemons.yml") unless File.exists?(config_path)
  options = YAML.load(ERB.new(IO.read(config_path)).result)
  options.each { |key, value| @options[key.to_sym] = value }
  @options[:dir_mode] = @options[:dir_mode].to_sym
  @options[:script] ||= File.join(root_path, daemons_dir, "#{app_name}.rb")
end

Public Instance Methods

[](key) click to toggle source
# File lib/daemons/rails/config.rb, line 24
def [](key)
  @options[key]
end
[]=(key, value) click to toggle source
# File lib/daemons/rails/config.rb, line 28
def []=(key, value)
  @options[key] = value
end
to_hash() click to toggle source
# File lib/daemons/rails/config.rb, line 32
def to_hash
  @options
end