class Mechanize::CookieStore::Redis
Constants
- DEFAULT_NAMESPACE
Public Class Methods
all(options = {})
click to toggle source
# File lib/mechanize/cookie_store/redis.rb, line 16 def self.all(options = {}) normalized_keys(options).each_with_object([]) do |key, cookies| serialized_cookie = connection.get(key) if serialized_cookie cookie = Marshal.load(serialized_cookie) unless cookie_expired?(cookie) cookies << cookie end end end end
connection()
click to toggle source
# File lib/mechanize/cookie_store/redis.rb, line 7 def self.connection return @store_connection if @store_connection namespace = Mechanize::CookieStore.connection_params[:namespace] || DEFAULT_NAMESPACE redis_connection = ::Redis.new(Mechanize::CookieStore.connection_params) @store_connection = ::Redis::Namespace.new(namespace, redis: redis_connection) end
normalized_keys(options = {})
click to toggle source
# File lib/mechanize/cookie_store/redis.rb, line 44 def self.normalized_keys(options = {}) domain = options[:domain] || "*" path = options[:path] || "*" name = options[:name] || "*" connection.keys("#{domain}:#{path}:#{name}") end
save(cookie)
click to toggle source
# File lib/mechanize/cookie_store/redis.rb, line 30 def self.save(cookie) return if cookie_expired?(cookie) key = "#{cookie.domain}:#{cookie.path}:#{cookie.name}" connection.set(key, Marshal.dump(cookie)) == "OK" end