Sha256: 3b959cefdfdef97898771f6e1ce591b77202a997aa671130505d10ce8bf1f48b

Contents?: true

Size: 925 Bytes

Versions: 5

Compression:

Stored size: 925 Bytes

Contents

require 'logger'

module Gummi
  class Configuration

    include Virtus.model

    attribute :hosts,              Array[String], default: :default_hosts
    attribute :logger,             Object,        default: :default_logger
    attribute :reload_connections, Boolean,       default: false
    attribute :retry_on_failure,   Boolean,       default: false
    attribute :reload_on_failure,  Boolean,       default: false
    attribute :randomize_hosts,    Boolean,       default: false

    def default_logger
      if defined?(Rails)
        Rails.logger
      else
        Logger.new(STDERR)
      end
    end

    def default_hosts
      case Gummi.env
      when "production"     then "elasticsearch.service.consul:9200"
      when "staging"        then "elasticsearch.service.consul:9200"
      when "development"    then "localhost:9200"
      when "test"           then "localhost:9200"
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
gummi-1.0.8 lib/gummi/configuration.rb
gummi-1.0.7 lib/gummi/configuration.rb
gummi-1.0.6 lib/gummi/configuration.rb
gummi-1.0.5 lib/gummi/configuration.rb
gummi-1.0.4 lib/gummi/configuration.rb