Class: CompaniesHouseGateway::Config

Inherits:
Object
  • Object
show all
Defined in:
lib/companies_house_gateway/config.rb

Constant Summary collapse

DEFAULT_OPTIONS =
{
  adapter:          Faraday.default_adapter,
  sender_id:        nil,
  password:         nil,
  email:            nil,
  cache:            nil,
  cache_args:       nil,
  raw:              false,
  api_endpoint:     "http://xmlgw.companieshouse.gov.uk/v1-0/xmlgw/Gateway",
  user_agent:       "CompaniesHouseGateway Ruby Gem #{CompaniesHouseGateway::VERSION}".freeze
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize {|_self| ... } ⇒ Config

Returns a new instance of Config.

Yields:

  • (_self)

Yield Parameters:



15
16
17
18
# File 'lib/companies_house_gateway/config.rb', line 15

def initialize
  @config = {}
  yield self if block_given?
end

Instance Method Details

#[](name) ⇒ Object



20
21
22
# File 'lib/companies_house_gateway/config.rb', line 20

def [](name)
  @config.fetch(name, DEFAULT_OPTIONS[name])
end

#[]=(name, val) ⇒ Object



24
25
26
# File 'lib/companies_house_gateway/config.rb', line 24

def []=(name, val)
  @config[name] = val
end

#cloneObject



28
29
30
# File 'lib/companies_house_gateway/config.rb', line 28

def clone
  Config.new { |config| @config.each { |k,v| config[k] = v } }
end