Sha256: 2957aa5cca5c6e5e376653c3b4330129d1009347f91be4c8c7052de87de5c2c2

Contents?: true

Size: 899 Bytes

Versions: 7

Compression:

Stored size: 899 Bytes

Contents

# encoding: utf-8
require "uri"
require "dynamoid/config/options"

module Dynamoid #:nodoc
  
  module Config
    extend self
    extend Options
    include ActiveModel::Observing

    option :adapter, :default => 'local'
    option :namespace, :default => defined?(Rails) ? "dynamoid_#{Rails.application.class.parent_name}_#{Rails.env}" : "dynamoid"
    option :logger, :default => defined?(Rails)
    option :access_key
    option :secret_key
    option :warn_on_scan, :default => true
    
    def default_logger
      defined?(Rails) && Rails.respond_to?(:logger) ? Rails.logger : ::Logger.new($stdout)
    end

    def logger
      @logger ||= default_logger
    end
    
    def logger=(logger)
      case logger
      when false, nil then @logger = nil
      when true then @logger = default_logger
      else
        @logger = logger if logger.respond_to?(:info)
      end
    end

  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
dynamoid-0.1.1 lib/dynamoid/config.rb
dynamoid-0.1.0 lib/dynamoid/config.rb
dynamoid-0.0.7 lib/dynamoid/config.rb
dynamoid-0.0.6 lib/dynamoid/config.rb
dynamoid-0.0.5 lib/dynamoid/config.rb
dynamoid-0.0.4 lib/dynamoid/config.rb
dynamoid-0.0.3 lib/dynamoid/config.rb