class WipeOut::Execution::Context

Attributes

config[R]
plan[R]
record[R]

Public Class Methods

new(plan, record, config = plan.config) click to toggle source
# File lib/wipe_out/execution/context.rb, line 9
def initialize(plan, record, config = plan.config)
  @plan = plan
  @record = record
  @config = config

  add_observer(CallbacksObserver.new(plan.callbacks, self))
end

Public Instance Methods

notify(name) click to toggle source
# File lib/wipe_out/execution/context.rb, line 23
def notify(name)
  changed
  notify_observers(name)
end
run() click to toggle source
# File lib/wipe_out/execution/context.rb, line 17
def run
  on_execute = plan.on_execute || config.default_on_execute

  on_execute.call(self)
end
subexecution(sub_plan, record) click to toggle source
# File lib/wipe_out/execution/context.rb, line 28
def subexecution(sub_plan, record)
  plan.callbacks.each { |callback| sub_plan.add_callback(callback) }
  self.class.new(sub_plan, record, config)
end