module ServiceOperation::Base

Base

Public Class Methods

included(base) click to toggle source
# File lib/service_operation/base.rb, line 7
def self.included(base)
  base.class_eval do
    extend ClassMethods

    include Delay
    include ErrorHandling
    include Hooks
    include Params
    include Validations

    attr_reader :context
  end
end
new(context = {}) click to toggle source

Instance Methods

# File lib/service_operation/base.rb, line 47
def initialize(context = {})
  @context = Context.build(context)
end

Public Instance Methods

call() click to toggle source
# File lib/service_operation/base.rb, line 51
def call
  nil
end
run() click to toggle source
# File lib/service_operation/base.rb, line 55
def run
  run!
rescue Failure
  nil
end
run!() click to toggle source
# File lib/service_operation/base.rb, line 61
def run!
  with_hooks { fail_if_errors! || skip || call } && true
end
skip() click to toggle source
# File lib/service_operation/base.rb, line 65
def skip
  context.skip || false
end
skip!() click to toggle source
# File lib/service_operation/base.rb, line 69
def skip!
  context.skip = true
end