Class: IBMCloudSdkCore::CP4DTokenManager

Inherits:
JWTTokenManager show all
Defined in:
lib/ibm_cloud_sdk_core/token_managers/cp4d_token_manager.rb

Overview

Class to manage CP4D Token Authentication

Constant Summary collapse

TOKEN_NAME =
"accessToken"

Instance Method Summary collapse

Methods inherited from JWTTokenManager

#token

Constructor Details

#initialize(url: nil, username: nil, password: nil, disable_ssl_verification: nil) ⇒ CP4DTokenManager

Returns a new instance of CP4DTokenManager.

Raises:

  • (ArgumentError)


13
14
15
16
17
18
19
20
21
22
# File 'lib/ibm_cloud_sdk_core/token_managers/cp4d_token_manager.rb', line 13

def initialize(url: nil, username: nil, password: nil, disable_ssl_verification: nil)
  raise ArgumentError.new("The url is mandatory for CP4D.") if url.nil?

  url += "/v1/preauth/validateAuth"
  @username = username
  @password = password
  @disable_ssl_verification = disable_ssl_verification
  super(url: url, token_name: TOKEN_NAME)
  token
end

Instance Method Details

#access_tokenObject



24
25
26
# File 'lib/ibm_cloud_sdk_core/token_managers/cp4d_token_manager.rb', line 24

def access_token
  @token_info[TOKEN_NAME]
end

#request_tokenObject



28
29
30
31
32
33
34
35
# File 'lib/ibm_cloud_sdk_core/token_managers/cp4d_token_manager.rb', line 28

def request_token
  request(
    method: "GET",
    url: @url,
    username: @username,
    password: @password
  )
end