class RedisClient

def blocking_call_v(timeout, command)

def blocking_call_v(timeout, command)
  command = @command_builder.generate(command)
  error = nil
  result = ensure_connected do |connection|
    @middlewares.call(command, config) do
      connection.call(command, timeout)
    end
  rescue ReadTimeoutError => error
    break
  end
  if error
    raise error
  elsif block_given?
    yield result
  else
    result
  end
end