class NovaposhtaApi::Client
Attributes
api_key[R]
Public Class Methods
new(api_key: nil) { |connection| ... }
click to toggle source
# File lib/novaposhta_api/client.rb, line 7 def initialize(api_key: nil) @api_key = api_key yield(http.connection) if block_given? end
resources()
click to toggle source
# File lib/novaposhta_api/client.rb, line 13 def self.resources { cities: Resources::CityResource, counterparties: Resources::CounterpartyResource, internet_documents: Resources::InternetDocumentResource, tracking_documents: Resources::TrackingDocumentResource, settlements: Resources::SettlementResource, warehouses: Resources::WarehouseResource } end
Public Instance Methods
http()
click to toggle source
# File lib/novaposhta_api/client.rb, line 45 def http @http ||= NovaposhtaApi::HttpClient.new( uri: NovaposhtaApi.configuration.api_url, api_key: api_key || NovaposhtaApi.configuration.api_key ) end
method_missing(name, *args, &block)
click to toggle source
Calls superclass method
# File lib/novaposhta_api/client.rb, line 24 def method_missing(name, *args, &block) if with_resource?(name) resources[name] ||= self.class.resources[name].new(http: http) resources[name] else super end end
resources()
click to toggle source
# File lib/novaposhta_api/client.rb, line 41 def resources @resources ||= {} end
respond_to_missing?(method_name, include_private = false)
click to toggle source
Calls superclass method
# File lib/novaposhta_api/client.rb, line 33 def respond_to_missing?(method_name, include_private = false) with_resource?(method_name) || super end
with_resource?(resource_name)
click to toggle source
# File lib/novaposhta_api/client.rb, line 37 def with_resource?(resource_name) self.class.resources.keys.include?(resource_name) end