ActiveSupport::CachingKeyGenerator (original) (raw)

Caching Key Generator

CachingKeyGenerator is a wrapper around KeyGenerator which allows users to avoid re-executing the key generation process when it’s called using the same salt and key_size.

Methods

G

N

Class Public methods

Source: show | on GitHub

def initialize(key_generator) @key_generator = key_generator @cache_keys = Concurrent::Map.new end

Instance Public methods

Returns a derived key suitable for use.

Source: show | on GitHub

def generate_key(*args) @cache_keys[args.join("|")] ||= @key_generator.generate_key(*args) end