class BetfairApiNgRails::Api::Caching::ResponseCache
Attributes
method[R]
sig_params[R]
Public Class Methods
new(method, params)
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 11 def initialize(method, params) @method = method @sig_params = createsig(params) end
redis_connection()
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 16 def self.redis_connection @_redis_connection ||= Redis.new end
Public Instance Methods
cache!(response)
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 28 def cache!(response) cache_adapter.set cache_key, JSON.dump(response) cache_adapter.expire cache_key, expire_time end
is_cached?()
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 20 def is_cached? !cache_result.nil? end
responser()
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 24 def responser Api::Http::Responser.new prepare_response end
Private Instance Methods
cache_adapter()
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 47 def cache_adapter self.class.redis_connection end
cache_key()
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 51 def cache_key "betfair_api_ng_rails:#{method}:#{sig_params}" end
cache_result()
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 35 def cache_result @_cache_result ||= cache_adapter.get cache_key end
expire_time()
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 43 def expire_time BetfairApiNgRails.config.cache_expire end
prepare_response()
click to toggle source
# File lib/betfair_api_ng_rails/api/caching/response_cache.rb, line 39 def prepare_response OpenStruct.new body: cache_result, code: '200' end