Class: FirebaseIdToken::Certificates::Redis

Inherits:
Certificates
  • Object
show all
Defined in:
lib/firebase_id_token/certificates/redis.rb

Overview

Redis specific methods for Certificates class

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(source: :id_token) ⇒ Redis

Returns a new instance of Redis.



6
7
8
9
10
11
# File 'lib/firebase_id_token/certificates/redis.rb', line 6

def initialize(source: :id_token)
  @source = source
  @redis = ::Redis::Namespace.new('firebase_id_token',
    redis: FirebaseIdToken.configuration.redis)
  @local_certs = read_certificates
end

Instance Attribute Details

#redisObject (readonly)

Returns the value of attribute redis.



4
5
6
# File 'lib/firebase_id_token/certificates/redis.rb', line 4

def redis
  @redis
end

Class Method Details

.ttl(source: :id_token) ⇒ Fixnum

Returns the current certificates TTL (Time-To-Live) in seconds. Zero meaning no certificates. It's the same as the certificates expiration time, use it to know when to request again.

Returns:

  • (Fixnum)


17
18
19
20
# File 'lib/firebase_id_token/certificates/redis.rb', line 17

def self.ttl(source: :id_token)
  ttl = new(source: source).redis.ttl(CACHE_KEYS.fetch(source))
  ttl < 0 ? 0 : ttl
end