Sha256: 173e38c896d692870e3616211a2cd17e2471002ae7bb67fba6575b1bdc61ff69

Contents?: true

Size: 975 Bytes

Versions: 4

Compression:

Stored size: 975 Bytes

Contents

require 'active_support/configurable'

module EpomRails
  # Configures global settings for EpomRails
  #   EpomRails.configure do |config|
  #     config.offline = false
  #   end
  def self.configure(&block)
    yield @config ||= EpomRails::Configuration.new
  end

  # Global settings for EpomRails
  def self.config
    @config
  end

  # need a Class for 3.0
  class Configuration #:nodoc:
    include ActiveSupport::Configurable
    config_accessor :offline

    def param_name
      config.param_name.respond_to?(:call) ? config.param_name.call : config.param_name
    end

    # define param_name writer (copied from AS::Configurable)
    writer, line = 'def param_name=(value); config.param_name = value; end', __LINE__
    singleton_class.class_eval writer, __FILE__, line
    class_eval writer, __FILE__, line
  end

  # this is ugly. why can't we pass the default value to config_accessor...?
  EpomRails.configure do |config|
    config.offline = false
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
epom_rails-0.4.9 lib/epom_rails/config.rb
epom_rails-0.4.8 lib/epom_rails/config.rb
epom_rails-0.4.7 lib/epom_rails/config.rb
epom_rails-0.4.6 lib/epom_rails/config.rb