lib/sidekiq/hierarchy/job.rb in sidekiq-hierarchy-1.0.0 vs lib/sidekiq/hierarchy/job.rb in sidekiq-hierarchy-1.1.0

- old
+ new

@@ -1,8 +1,10 @@ module Sidekiq module Hierarchy class Job + include RedisConnection + # Job hash keys INFO_FIELD = 'i'.freeze PARENT_FIELD = 'p'.freeze STATUS_FIELD = 's'.freeze WORKFLOW_STATUS_FIELD = 'w'.freeze @@ -23,20 +25,19 @@ ### Class definition attr_reader :jid - def initialize(jid, redis_pool=nil) + def initialize(jid) @jid = jid - @redis_pool = redis_pool end class << self alias_method :find, :new - def create(jid, job_hash, redis_pool=nil) - new(jid, redis_pool).tap do |job| + def create(jid, job_hash) + new(jid).tap do |job| job[INFO_FIELD] = Sidekiq.dump_json(filtered_job_hash(job_hash)) end end # saves INFO_KEYS as well as whatever keys are specified @@ -52,25 +53,21 @@ children.each(&:delete) redis { |conn| conn.del(redis_children_lkey, redis_job_hkey) } end def exists? - redis do |conn| - conn.exists(redis_job_hkey) - end + redis { |conn| conn.exists(redis_job_hkey) } end def ==(other_job) other_job.instance_of?(self.class) && self.jid == other_job.jid end # Magic getter backed by redis hash def [](key) - redis do |conn| - conn.hget(redis_job_hkey, key) - end + redis { |conn| conn.hget(redis_job_hkey, key) } end # Magic setter backed by redis hash def []=(key, value) redis do |conn| @@ -89,17 +86,17 @@ ### Tree exploration and manipulation def parent if parent_jid = self[PARENT_FIELD] - self.class.find(parent_jid, @redis_pool) + self.class.find(parent_jid) end end def children redis do |conn| - conn.lrange(redis_children_lkey, 0, -1).map { |jid| self.class.find(jid, @redis_pool) } + conn.lrange(redis_children_lkey, 0, -1).map { |jid| self.class.find(jid) } end end def root? parent.nil? @@ -274,17 +271,8 @@ end def redis_children_lkey "#{redis_job_hkey}:children" end - - def redis(&blk) - if @redis_pool - @redis_pool.with(&blk) - else - Sidekiq.redis(&blk) - end - end - private :redis end end end