module BeanstalkFarmer::Config

Manages configuration settings and defaults.

@example

BeanstalkFarmer::Config.logger = Rails.logger
BeanstalkFarmer::Config.json_engine = :yajl

Constants

DEFAULT_HOST
DEFAULT_PORT

Attributes

settings[RW]

Public Instance Methods

json_engine() click to toggle source

@see MultiJson.default_engine

# File lib/beanstalk_farmer/config.rb, line 46
def json_engine
  MultiJson.engine
end
json_engine=(json_engine) click to toggle source

@see MultiJson.engine=

# File lib/beanstalk_farmer/config.rb, line 51
def json_engine=(json_engine)
  MultiJson.engine = json_engine
end
option(name, options = {}) click to toggle source

Define a configuration option with a default.

@example Define the option.

Config.option(:persist_in_safe_mode, :default => false)

@param [Symbol] name The name of the configuration option. @param [Hash] options Extras for the option.

@option options [Object] :default The default value.

@note Copied from Mongoid. Thank you!

@private

# File lib/beanstalk_farmer/config.rb, line 31
def option(name, options = {})
  define_method(name) do
    settings.has_key?(name) ? settings[name] : options[:default]
  end
  define_method("#{name}=") { |value| settings[name] = value }
  define_method("#{name}?") { send(name) }
end