Sha256: 03801de65b013c7935bf54701e1e74db58ca894aff22daf5029fab058376b119

Contents?: true

Size: 1.46 KB

Versions: 8

Compression:

Stored size: 1.46 KB

Contents

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

# Shamelessly stolen from Dynamoid
module DynaModel

  # Contains all the basic configuration information required for Dynamoid: both sensible defaults and required fields.
  module Config
    extend self
    extend Options

    # All the default options.
    option :logger, :default => defined?(Rails)
    option :read_provision, :default => 50
    option :write_provision, :default => 10
    # TODO - default adapter client based on config
    #option :namespace, :default => defined?(Rails) ? "#{Rails.application.class.parent_name}_#{Rails.env}" : ""
    option :endpoint, :default => 'dynamodb.us-west-2.amazonaws.com'
    option :port, :default => 443
    option :use_ssl, :default => true
    option :default_guid_delimiter, :default => ":"
    option :namespace, :default => ""

    # The default logger: either the Rails logger or just stdout.
    def default_logger
      defined?(Rails) && Rails.respond_to?(:logger) ? Rails.logger : ::Logger.new($stdout)
    end

    # Returns the assigned logger instance.
    def logger
      @logger ||= default_logger
    end

    # If you want to, set the logger manually to any output you'd like. Or pass false or nil to disable logging entirely.
    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

8 entries across 8 versions & 1 rubygems

Version Path
dyna_model-0.0.8 lib/dyna_model/config.rb
dyna_model-0.0.7 lib/dyna_model/config.rb
dyna_model-0.0.6 lib/dyna_model/config.rb
dyna_model-0.0.5 lib/dyna_model/config.rb
dyna_model-0.0.4 lib/dyna_model/config.rb
dyna_model-0.0.3 lib/dyna_model/config.rb
dyna_model-0.0.2 lib/dyna_model/config.rb
dyna_model-0.0.1 lib/dyna_model/config.rb