class SessionValidator::CachedClient
Public Class Methods
new(client, cache)
click to toggle source
# File lib/session_validator/cached_client.rb, line 3 def initialize(client, cache) @client = client @cache = cache end
Public Instance Methods
filter_invalid(msids)
click to toggle source
# File lib/session_validator/cached_client.rb, line 19 def filter_invalid(msids) @cache.cleanup @client.filter_invalid(msids).tap do |result| msids.each do |msid| @cache.set msid, true unless result.include?(msid) end end end
valid?(msid)
click to toggle source
# File lib/session_validator/cached_client.rb, line 8 def valid?(msid) @cache.cleanup cached_result = @cache.get msid return cached_result if cached_result @client.valid?(msid).tap do |result| @cache.set msid, result if result end end