Module: Qyu::Workers::Concerns::Callback
- Included in:
- Base
- Defined in:
- lib/qyu/workers/concerns/callback.rb
Instance Method Summary collapse
-
#callback(method, type, &block) ⇒ Object
Meant to add callbacks to Qyu::Worker.
- #run_callbacks(method, &block) ⇒ Object
Instance Method Details
#callback(method, type, &block) ⇒ Object
Meant to add callbacks to Qyu::Worker
Usage:
Qyu::Worker.new do
callback :execute, :after do
# Do something after execution
end
end
18 19 20 21 22 |
# File 'lib/qyu/workers/concerns/callback.rb', line 18 def callback(method, type, &block) @_callbacks ||= {} @_callbacks[method] ||= {} @_callbacks[method][type] = block end |
#run_callbacks(method, &block) ⇒ Object
24 25 26 27 28 |
# File 'lib/qyu/workers/concerns/callback.rb', line 24 def run_callbacks(method, &block) find_callback(method, :before)&.call find_callback(method, :around) ? find_callback(method, :around).call(block) : yield find_callback(method, :after)&.call end |