Sha256: 5e49570e0d66f3e81a7900a4f58e278ac66e8dabf64b29e5ad958ef5a7c8618a

Contents?: true

Size: 1.51 KB

Versions: 1

Compression:

Stored size: 1.51 KB

Contents

require 'faraday'
require 'chalk_ruby/defaults'

module ChalkRuby
  class Config
    attr_accessor :client_id,
                  :client_secret,
                  :query_server,
                  :api_server,
                  :environment,
                  :query_timeout,
                  :api_timeout,
                  :connect_timeout

    #
    # @option options [String] :client_id
    # @option options [String] :client_secret
    # @option options [String] :query_host
    # @option options [String] :api_host
    # @option options [Integer] :read_timeout
    # @option options [Integer] :write_timeout
    # @option options [Integer] :connect_timeout
    #
    def initialize(opts = {})
      @client_id       = opts[:client_id] || ENV['CHALK_CLIENT_ID']
      @client_secret   = opts[:client_secret] || ENV['CHALK_CLIENT_SECRET']
      @environment     = opts[:environment] || ENV['CHALK_ACTIVE_ENVIRONMENT']
      @query_server    = opts[:query_server] || ENV['CHALK_QUERY_SERVER'] || Defaults::QUERY_SERVER
      @api_server      = opts[:api_server] || ENV['CHALK_API_SERVER'] || Defaults::API_SERVER
      @query_timeout   = opts[:query_timeout] || Defaults::API_TIMEOUT
      @api_timeout     = opts[:api_timeout] || Defaults::QUERY_TIMEOUT
      @connect_timeout = opts[:connect_timeout] || Defaults::CONNECT_TIMEOUT

      raise ChalkError, 'No Client ID provided, please set :client_id' if @client_id.nil?
      raise ChalkError, 'No Client Secret provided, please set :client_secret' if @client_secret.nil?
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
chalk_ruby-0.1.0 lib/chalk_ruby/config/config.rb