Module: Wso2Toolbox::TokenManager::Adapters::RailsCachedAdapter

Defined in:
lib/wso2_toolbox/token_manager/adapters/rails_cached_adapter.rb

Constant Summary collapse

TOKEN_DELAY =
5.minutes

Class Method Summary collapse

Class Method Details

.active_token?Boolean

Returns:

  • (Boolean)


32
33
34
35
# File 'lib/wso2_toolbox/token_manager/adapters/rails_cached_adapter.rb', line 32

def active_token?
  return false unless Setting.token_time_for_job
  Time.parse(Setting.token_time_for_job) - TOKEN_DELAY > Time.now
end

.generate_tokenObject



12
13
14
15
# File 'lib/wso2_toolbox/token_manager/adapters/rails_cached_adapter.rb', line 12

def generate_token
  new_token unless active_token?
  store_token(Setting.token_for_job)
end

.new_tokenObject



19
20
21
22
23
24
25
26
# File 'lib/wso2_toolbox/token_manager/adapters/rails_cached_adapter.rb', line 19

def new_token
  token_params =
    Wso2Toolbox::TokenManager::ApiManagerService.create_token
  Setting.token_for_job =
    "#{token_params[:token_type]} #{token_params[:access_token]}"
  Setting.token_time_for_job =
    Time.now + token_params[:expires_in].to_i.seconds
end

.store_token(token) ⇒ Object



28
29
30
# File 'lib/wso2_toolbox/token_manager/adapters/rails_cached_adapter.rb', line 28

def store_token(token)
  RequestStore.store[:token] = token
end