class Redis::Client
Constants
- ERROR_MAPPING
Public Class Methods
Source
# File lib/redis/client.rb, line 22 def config(**kwargs) super(protocol: 2, **kwargs) end
Calls superclass method
Source
# File lib/redis/client.rb, line 26 def sentinel(**kwargs) super(protocol: 2, **kwargs, client_implementation: ::RedisClient) end
Calls superclass method
Source
# File lib/redis/client.rb, line 30 def translate_error!(error, mapping: ERROR_MAPPING) redis_error = translate_error_class(error.class, mapping: mapping) raise redis_error, error.message, error.backtrace end
Private Class Methods
Source
# File lib/redis/client.rb, line 37 def translate_error_class(error_class, mapping: ERROR_MAPPING) mapping.fetch(error_class) rescue IndexError if (client_error = error_class.ancestors.find { |a| mapping[a] }) mapping[error_class] = mapping[client_error] else raise end end
Public Instance Methods
Source
# File lib/redis/client.rb, line 95 def blocking_call_v(timeout, command, &block) if timeout && timeout > 0 # Can't use the command timeout argument as the connection timeout # otherwise it would be very racy. So we add the regular read_timeout on top # to account for the network delay. timeout += config.read_timeout end super(timeout, command, &block) rescue ::RedisClient::Error => error Client.translate_error!(error) end
Calls superclass method
Source
# File lib/redis/client.rb, line 89 def call_v(command, &block) super(command, &block) rescue ::RedisClient::Error => error Client.translate_error!(error) end
Calls superclass method
Source
# File lib/redis/client.rb, line 120 def inherit_socket! @inherit_socket = true end
Source
# File lib/redis/client.rb, line 114 def multi(watch: nil) super rescue ::RedisClient::Error => error Client.translate_error!(error) end
Calls superclass method
Source
# File lib/redis/client.rb, line 108 def pipelined(exception: true) super rescue ::RedisClient::Error => error Client.translate_error!(error) end
Calls superclass method