Class: MaybeLater::RunsCallbacks

Inherits:
Object
  • Object
show all
Defined in:
lib/maybe_later/runs_callbacks.rb

Instance Method Summary collapse

Instance Method Details

#callObject



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/maybe_later/runs_callbacks.rb', line 3

def call
  store = Store.instance
  config = MaybeLater.config

  store.callbacks.each do |callback|
    if callback.inline
      callback.callable.call
    else
      ThreadPool.instance.run(callback.callable)
    end
  rescue => e
    config.on_error&.call(e)
  ensure
    config.after_each&.call
  end

  store.clear_callbacks!
end