class Rack::Attack::StoreProxy::RedisCacheStoreProxy
Public Class Methods
handle?(store)
click to toggle source
# File lib/rack/attack/store_proxy/redis_cache_store_proxy.rb, line 9 def self.handle?(store) store.class.name == "ActiveSupport::Cache::RedisCacheStore" end
Public Instance Methods
increment(name, amount = 1, **options)
click to toggle source
Calls superclass method
# File lib/rack/attack/store_proxy/redis_cache_store_proxy.rb, line 13 def increment(name, amount = 1, **options) # RedisCacheStore#increment ignores options[:expires_in]. # # So in order to workaround this we use RedisCacheStore#write (which sets expiration) to initialize # the counter. After that we continue using the original RedisCacheStore#increment. if options[:expires_in] && !read(name) write(name, amount, options) amount else super end end
read(name, options = {})
click to toggle source
Calls superclass method
# File lib/rack/attack/store_proxy/redis_cache_store_proxy.rb, line 27 def read(name, options = {}) super(name, options.merge!(raw: true)) end
write(name, value, options = {})
click to toggle source
Calls superclass method
# File lib/rack/attack/store_proxy/redis_cache_store_proxy.rb, line 31 def write(name, value, options = {}) super(name, value, options.merge!(raw: true)) end