Class: ActivePublicResources::Client
- Inherits:
-
Object
- Object
- ActivePublicResources::Client
- Defined in:
- lib/active_public_resources/client.rb
Instance Method Summary collapse
-
#initialize(config = {}) ⇒ Client
constructor
A new instance of Client.
- #initialized_drivers ⇒ Object
- #perform_request(driver_name, request_criteria) ⇒ Object
Constructor Details
#initialize(config = {}) ⇒ Client
Returns a new instance of Client.
3 4 5 6 7 8 9 10 11 |
# File 'lib/active_public_resources/client.rb', line 3 def initialize(config={}) raise ArgumentError.new("key/value pair must be provided") if config.blank? @drivers = {} ActivePublicResources.symbolize_keys(config).each do |k, v| klass = "ActivePublicResources::Drivers::#{k.to_s.split('_').map(&:capitalize).join}".constantize @drivers[k] = (v.present? ? klass.new(v) : klass.new) end end |
Instance Method Details
#initialized_drivers ⇒ Object
17 18 19 |
# File 'lib/active_public_resources/client.rb', line 17 def initialized_drivers @drivers.keys end |
#perform_request(driver_name, request_criteria) ⇒ Object
13 14 15 |
# File 'lib/active_public_resources/client.rb', line 13 def perform_request(driver_name, request_criteria) @drivers[driver_name.to_sym].perform_request(request_criteria) end |