class Rjob::Scripts::ScriptRunner
Public Class Methods
new()
click to toggle source
# File lib/rjob/scripts.rb, line 15 def initialize @scripts = {} end
Public Instance Methods
exec(redis, name, *args)
click to toggle source
# File lib/rjob/scripts.rb, line 28 def exec(redis, name, *args) script = @scripts[name] redis.evalsha(script.sha1, *args) end
load_all_scripts(redis)
click to toggle source
# File lib/rjob/scripts.rb, line 19 def load_all_scripts(redis) SCRIPTS.each do |file_name, class_name| klass = Rjob::Scripts.const_get(class_name) script = klass.new @scripts[file_name] = script load_script(redis, script) end end
Private Instance Methods
load_script(redis, script)
click to toggle source
# File lib/rjob/scripts.rb, line 35 def load_script(redis, script) script.sha1 = redis.script(:load, script.lua_script) end