Class: Cognito::Client::Connection

Inherits:
Object
  • Object
show all
Defined in:
lib/cognito/client/connection.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.parse(uri:, **api_params) ⇒ Object



7
8
9
# File 'lib/cognito/client/connection.rb', line 7

def self.parse(uri:, **api_params)
  new(uri: Addressable::URI.parse(uri), **api_params)
end

Instance Method Details

#endpoint(route) ⇒ Object



25
26
27
# File 'lib/cognito/client/connection.rb', line 25

def endpoint(route)
  uri.join(route).to_str
end

#run(request) ⇒ Object

ignores :reek:FeatureEnvy:



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/cognito/client/connection.rb', line 12

def run(request)
  signed_request =
    request.sign(date: Time.now.httpdate, api_key: api_key, api_secret: api_secret)

  HTTP
    .headers(signed_request.headers.merge(version_headers))
    .request(
      signed_request.verb,
      endpoint(signed_request.endpoint),
      json: signed_request.data
    )
end