module ActiveJob::Traceable
Constants
- VERSION
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
# File lib/activejob/traceable/traceable.rb, line 10 def initialize(*args) super(*args) @tracing_info = Traceable.tracing_info_getter.call.deep_stringify_keys end
tracing_info_getter()
click to toggle source
# File lib/activejob/traceable/traceable.rb, line 33 def tracing_info_getter @tracing_info_getter || -> { {} } end
tracing_info_setter()
click to toggle source
# File lib/activejob/traceable/traceable.rb, line 37 def tracing_info_setter @tracing_info_setter || -> {} end
Public Instance Methods
deserialize(job_data)
click to toggle source
Calls superclass method
# File lib/activejob/traceable/traceable.rb, line 21 def deserialize(job_data) super(job_data) if job_data['tracing_info'].is_a?(Hash) self.tracing_info = job_data['tracing_info'] end Traceable.tracing_info_setter.call(tracing_info.with_indifferent_access) end
serialize()
click to toggle source
Calls superclass method
# File lib/activejob/traceable/traceable.rb, line 17 def serialize super.merge!('tracing_info' => tracing_info) end
tracing_info_getter=(lambda)
click to toggle source
# File lib/activejob/traceable.rb, line 16 def tracing_info_getter=(lambda) if lambda raise 'Tracing info getter should be callable' unless lambda.respond_to?(:call) raise 'Tracing info getter should contain a hash' unless lambda.call.is_a?(Hash) @tracing_info_getter = lambda else # Resets the value @tracing_info_getter = nil end end
tracing_info_setter=(lambda)
click to toggle source
# File lib/activejob/traceable.rb, line 28 def tracing_info_setter=(lambda) if lambda raise 'Tracing info setter should be callable' unless lambda.respond_to?(:call) @tracing_info_setter = lambda else # Resets the value @tracing_info_setter = nil end end