module Firebolt::Warmer
Public Instance Methods
warm()
click to toggle source
Public instance methods
# File lib/firebolt/warmer.rb, line 8 def warm results = perform _warmer_write_results_to_cache(results) _warmer_reset_salt! results end
Private Instance Methods
_warmer_expires_in()
click to toggle source
Private instance methods
# File lib/firebolt/warmer.rb, line 22 def _warmer_expires_in @_warmer_expires_in ||= ::Firebolt.config.warming_frequency + 1.hour end
_warmer_raise_failed_result()
click to toggle source
# File lib/firebolt/warmer.rb, line 26 def _warmer_raise_failed_result raise "Warmer must return an object that responds to #each_pair." end
_warmer_reset_salt!()
click to toggle source
# File lib/firebolt/warmer.rb, line 30 def _warmer_reset_salt! ::Firebolt.reset_salt!(_warmer_salt) end
_warmer_salt()
click to toggle source
# File lib/firebolt/warmer.rb, line 34 def _warmer_salt @_warmer_salt ||= ::SecureRandom.hex end
_warmer_salted_cache_key(suffix)
click to toggle source
# File lib/firebolt/warmer.rb, line 38 def _warmer_salted_cache_key(suffix) cache_key_with_salt(suffix, _warmer_salt) end
_warmer_write_results_to_cache(results)
click to toggle source
# File lib/firebolt/warmer.rb, line 42 def _warmer_write_results_to_cache(results) _warmer_raise_failed_result unless results.respond_to?(:each_pair) results.each_pair do |key, value| cache_key = _warmer_salted_cache_key(key) ::Firebolt.config.cache.write(cache_key, value, :expires_in => _warmer_expires_in) end end