Class: Wurk::Middleware::CurrentAttributes::Save

Inherits:
Object
  • Object
show all
Includes:
ServerMiddleware
Defined in:
lib/wurk/middleware/current_attributes.rb

Overview

Client-side: snapshot each registered CurrentAttributes class into the job hash. Caller-supplied keys take precedence (‘||=`).

Instance Attribute Summary

Attributes included from ServerMiddleware

#config

Instance Method Summary collapse

Methods included from ServerMiddleware

#logger, #redis, #redis_pool

Constructor Details

#initialize(classes) ⇒ Save

Returns a new instance of Save.



53
54
55
# File 'lib/wurk/middleware/current_attributes.rb', line 53

def initialize(classes)
  @classes = classes
end

Instance Method Details

#call(_job_class, job, _queue, _redis_pool) ⇒ Object



57
58
59
60
61
62
63
# File 'lib/wurk/middleware/current_attributes.rb', line 57

def call(_job_class, job, _queue, _redis_pool)
  @classes.each_with_index do |klass, idx|
    key = CurrentAttributes.key_for(idx)
    job[key] ||= CurrentAttributes.snapshot(klass)
  end
  yield
end