class Keycloak::PublicKeyCachedResolver
Attributes
cached_public_key_retrieved_at[R]
Public Class Methods
from_configuration(http_client, configuration)
click to toggle source
# File lib/keycloak-api-rails/public_key_cached_resolver.rb, line 12 def self.from_configuration(http_client, configuration) PublicKeyCachedResolver.new(http_client, configuration.realm_id, configuration.public_key_cache_ttl) end
new(http_client, realm_id, public_key_cache_ttl)
click to toggle source
# File lib/keycloak-api-rails/public_key_cached_resolver.rb, line 5 def initialize(http_client, realm_id, public_key_cache_ttl) @resolver = PublicKeyResolver.new(http_client, realm_id) @public_key_cache_ttl = public_key_cache_ttl @cached_public_keys = nil @cached_public_key_retrieved_at = nil end
Public Instance Methods
find_public_keys()
click to toggle source
# File lib/keycloak-api-rails/public_key_cached_resolver.rb, line 16 def find_public_keys if public_keys_are_outdated? @cached_public_keys = @resolver.find_public_keys @cached_public_key_retrieved_at = Time.now end @cached_public_keys end
Private Instance Methods
public_keys_are_outdated?()
click to toggle source
# File lib/keycloak-api-rails/public_key_cached_resolver.rb, line 26 def public_keys_are_outdated? @cached_public_keys.nil? || @cached_public_key_retrieved_at.nil? || Time.now > (@cached_public_key_retrieved_at + @public_key_cache_ttl.seconds) end