Class: Sidekiq::CurrentAttributes::Load

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

Instance Attribute Summary

Attributes included from ServerMiddleware

#config

Instance Method Summary collapse

Methods included from ServerMiddleware

#logger, #redis, #redis_pool

Constructor Details

#initialize(cattrs) ⇒ Load

Returns a new instance of Load.



49
50
51
# File 'lib/sidekiq/middleware/current_attributes.rb', line 49

def initialize(cattrs)
  @cattrs = cattrs
end

Instance Method Details

#call(_, job, &block) ⇒ Object



53
54
55
56
57
58
59
60
61
62
63
# File 'lib/sidekiq/middleware/current_attributes.rb', line 53

def call(_, job, *, &block)
  klass_attrs = {}

  @cattrs.each do |(key, strklass)|
    next unless job.has_key?(key)

    klass_attrs[strklass.constantize] = Serializer.deserialize(job[key]).to_h
  end

  wrap(klass_attrs.to_a, &block)
end