Sha256: 63599048a663de8b5f2226364a915d22372a7751cbdc80c302980aa0fee6c66e

Contents?: true

Size: 1010 Bytes

Versions: 53

Compression:

Stored size: 1010 Bytes

Contents

require "redis/connection/registry"
require "hiredis/connection"
require "timeout"

class Redis
  module Connection
    class Hiredis
      def initialize
        @connection = ::Hiredis::Connection.new
      end

      def connected?
        @connection.connected?
      end

      def timeout=(usecs)
        @connection.timeout = usecs
      end

      def connect(host, port, timeout)
        @connection.connect(host, port, timeout)
      rescue Errno::ETIMEDOUT
        raise Timeout::Error
      end

      def connect_unix(path, timeout)
        @connection.connect_unix(path, timeout)
      rescue Errno::ETIMEDOUT
        raise Timeout::Error
      end

      def disconnect
        @connection.disconnect
      end

      def write(command)
        @connection.write(command)
      end

      def read
        @connection.read
      rescue RuntimeError => err
        raise ::Redis::ProtocolError.new(err.message)
      end
    end
  end
end

Redis::Connection.drivers << Redis::Connection::Hiredis

Version data entries

53 entries across 53 versions & 6 rubygems

Version Path
abaci-0.3.0 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.7.5 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.7.4 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.7.3 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.7.2 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.7.1 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.7.0 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.9 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.8 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.7 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.6 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.5 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.4 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.3 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.2 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.1 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.6.0 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.5.17 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.5.16 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb
classiccms-0.5.15 vendor/bundle/gems/redis-2.2.2/lib/redis/connection/hiredis.rb