Class: Zara4::API::Communication::Authentication::ApplicationAuthenticator

Inherits:
Authenticator
  • Object
show all
Defined in:
lib/zara4/api/communication/authentication/application_authenticator.rb

Instance Attribute Summary

Attributes inherited from Authenticator

#client_id, #client_secret

Instance Method Summary collapse

Methods inherited from Authenticator

#initialize, #with_image_processing, #with_usage

Constructor Details

This class inherits a constructor from Zara4::API::Communication::Authentication::Authenticator

Instance Method Details

#acquire_access_tokenObject

Acquire an AccessToken using this ApplicationAuthenticator.



8
9
10
11
12
13
14
15
16
17
# File 'lib/zara4/api/communication/authentication/application_authenticator.rb', line 8

def acquire_access_token

  grant = Zara4::API::Communication::Grant::ClientCredentialsGrantRequest.new(@client_id, @client_secret, @scopes)
  tokens = grant.get_tokens()
  
  access_token = tokens['access_token']
  expires_at   = Zara4::API::Communication::Util::calculate_expiry_time(tokens['expires_in'])
  
  return Zara4::API::Communication::AccessToken::ReissuableAccessToken.new(@client_id, @client_secret, access_token, expires_at, @scopes)      
end