class Punchline::MinQueue::Script

Constants

SCRIPT_BASE_PATH

Attributes

body[RW]
redis[RW]
script_name[RW]
sha[RW]

Public Class Methods

new(redis, script_name) click to toggle source
# File lib/punchline/min_queue.rb, line 61
def initialize(redis, script_name)
  @redis = redis
  @script_name = script_name
end

Public Instance Methods

call(keys = [], argv = []) click to toggle source
# File lib/punchline/min_queue.rb, line 66
def call(keys = [], argv = [])
  load! unless @body
  @redis.evalsha sha, keys, argv
end

Private Instance Methods

load!() click to toggle source
# File lib/punchline/min_queue.rb, line 73
def load!
  path = File.join SCRIPT_BASE_PATH, script_name
  @body = File.read path
  @sha  = redis.script :load, body
end