Class: Alman::ApiClient

Inherits:
Object
  • Object
show all
Defined in:
lib/alman/apibits/api_client.rb

Direct Known Subclasses

DefaultClient

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(headers, params) ⇒ ApiClient

Returns a new instance of ApiClient.



5
6
7
# File 'lib/alman/apibits/api_client.rb', line 5

def initialize(headers, params)
  self.refresh_from(headers, params)
end

Instance Attribute Details

#headersObject

Returns the value of attribute headers.



3
4
5
# File 'lib/alman/apibits/api_client.rb', line 3

def headers
  @headers
end

#paramsObject

Returns the value of attribute params.



3
4
5
# File 'lib/alman/apibits/api_client.rb', line 3

def params
  @params
end

Instance Method Details

#execute(api_method) ⇒ Object



15
16
17
18
19
# File 'lib/alman/apibits/api_client.rb', line 15

def execute(api_method)
  api_method.headers = ParamsBuilder.merge(api_method.headers, @headers)
  api_method.params = ParamsBuilder.merge(api_method.params, @params)
  api_method.execute
end

#inspectObject



21
22
23
24
25
# File 'lib/alman/apibits/api_client.rb', line 21

def inspect
  "#<#{self.class}:0x#{self.object_id.to_s(16)}> Headers: " +
    JSON.pretty_generate(@headers) + ", Params: " +
    JSON.pretty_generate(@params)
end

#refresh_from(headers, params) ⇒ Object



9
10
11
12
13
# File 'lib/alman/apibits/api_client.rb', line 9

def refresh_from(headers, params)
  @headers = headers
  @params = params
  self
end