Module: Services::CoreAuthClientCredentials

Defined in:
lib/oct_td_factory/services/core_auth_client_credentials.rb

Instance Method Summary collapse

Instance Method Details

#core_access_tokenObject



28
29
30
# File 'lib/oct_td_factory/services/core_auth_client_credentials.rb', line 28

def core_access_token
  @core_access_token ||= core_client.client_credentials.get_token.token
end

#core_clientObject



13
14
15
16
17
18
19
20
21
22
# File 'lib/oct_td_factory/services/core_auth_client_credentials.rb', line 13

def core_client
  fetch_core_auth_client_credentials

  OAuth2::Client.new(
    @client_id,
    @client_secret,
    site: @url,
    token_url: @token_url
  )
end

#core_token_responseObject



24
25
26
# File 'lib/oct_td_factory/services/core_auth_client_credentials.rb', line 24

def core_token_response
  @core_token_response ||= core_client.client_credentials.get_token
end

#create_requestObject



32
33
34
# File 'lib/oct_td_factory/services/core_auth_client_credentials.rb', line 32

def create_request
  OAuth2::AccessToken.new(core_client, core_access_token)
end

#fetch_core_auth_client_credentialsObject



5
6
7
8
9
10
11
# File 'lib/oct_td_factory/services/core_auth_client_credentials.rb', line 5

def fetch_core_auth_client_credentials
  @url = ENV.fetch('CORE_URL')
  @token_url = '/sso/oauth/token'
  @grant_type = 'client_credentials'
  @client_id = ENV.fetch('CORE_AUTH_CLIENT_ID')
  @client_secret = ENV.fetch('CORE_AUTH_CLIENT_SECRET')
end