Class: FirebaseIdToken::Certificates::ActiveSupport
- Inherits:
-
Certificates
- Object
- Certificates
- FirebaseIdToken::Certificates::ActiveSupport
- Defined in:
- lib/firebase_id_token/certificates/active_support.rb
Overview
ActiveSupport specific methods for Certificates class
Constant Summary collapse
- RACE_CONDITION_TIME =
5.seconds
Instance Attribute Summary collapse
-
#cache_store ⇒ Object
readonly
Returns the value of attribute cache_store.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(source: :id_token) ⇒ ActiveSupport
constructor
A new instance of ActiveSupport.
Constructor Details
#initialize(source: :id_token) ⇒ ActiveSupport
Returns a new instance of ActiveSupport.
7 8 9 10 11 |
# File 'lib/firebase_id_token/certificates/active_support.rb', line 7 def initialize(source: :id_token) @source = source @cache_store = ::FirebaseIdToken.configuration.cache_store @local_certs = read_certificates end |
Instance Attribute Details
#cache_store ⇒ Object (readonly)
Returns the value of attribute cache_store.
4 5 6 |
# File 'lib/firebase_id_token/certificates/active_support.rb', line 4 def cache_store @cache_store end |
Class Method Details
.ttl(source: :id_token) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/firebase_id_token/certificates/active_support.rb', line 13 def self.ttl(source: :id_token) current_time = Time.now.to_i entry = new(source: source).cache_store.read CACHE_KEYS.fetch(source) if entry expires_at = JSON.parse(entry)["expires_at"] return expires_at - current_time < 0 ? 0 : expires_at - current_time end return 0 end |