class AASM::Core::Invokers::BaseInvoker

invoking and logging definitions
Base concrete invoker class which contain basic
#

def initialize(subject, record, args)

def initialize(subject, record, args)
  @subject = subject
  @record = record
  @args = args
  @result = false
  @failures = []
end

def invoke

def invoke
  return unless may_invoke?
  log_failure unless invoke_subject
  result
end

def invoke_subject

def invoke_subject
  raise NoMethodError, '"#invoke_subject" is not implemented'
end

def log_failure

def log_failure
  raise NoMethodError, '"#log_failure" is not implemented'
end

def may_invoke?

def may_invoke?
  raise NoMethodError, '"#may_invoke?" is not implemented'
end

def with_failures(failures_buffer)

def with_failures(failures_buffer)
  @failures = failures_buffer
  self
end