Sha256: 05464ac24933d88e0f5e3939be44f4a6868a8cada7d3b3e3b8072aaabeee5730
Contents?: true
Size: 1.04 KB
Versions: 2
Compression:
Stored size: 1.04 KB
Contents
# frozen_string_literal: true require 'active_support/core_ext/numeric/time' module Wso2Toolbox module TokenManager module Adapters module RailsCachedAdapter class << self TOKEN_DELAY = 5.minutes def generate_token new_token unless active_token? store_token(Setting.token_for_job) end private_class_method 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 def store_token(token) RequestStore.store[:token] = token end def active_token? return false unless Setting.token_time_for_job Time.parse(Setting.token_time_for_job.to_s) - TOKEN_DELAY > Time.now end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
wso2_toolbox-0.2.3 | lib/wso2_toolbox/token_manager/adapters/rails_cached_adapter.rb |
wso2_toolbox-0.2.2 | lib/wso2_toolbox/token_manager/adapters/rails_cached_adapter.rb |