Sha256: 1956ec0dedba37ad2c5fdbb4a4d9147b3eb0896345090d0efbe32830c696682a

Contents?: true

Size: 532 Bytes

Versions: 4

Compression:

Stored size: 532 Bytes

Contents

require "redic/client"

class Redic
  attr :url
  attr :client

  def initialize(url = "redis://127.0.0.1:6379")
    @url = url
    @client = Redic::Client.new(url)
    @queue = []
  end

  def call(*args)
    @client.connect do
      @client.write(args)
      @client.read
    end
  end

  def queue(*args)
    @queue << args
  end

  def commit
    @client.connect do
      @queue.each do |args|
        @client.write(args)
      end

      @queue.map do
        @client.read
      end
    end
  ensure
    @queue.clear
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
redic-0.0.8 lib/redic.rb
redic-0.0.7 lib/redic.rb
redic-0.0.6 lib/redic.rb
redic-0.0.5 lib/redic.rb