module GuidedInteractor
Usage
class MyInteractor include GuidedInteractor expects :foo expects! :bar, :baz provides :waldo def call context.waldo = 'waldo' puts foo puts waldo end end
Constants
- VERSION
Public Class Methods
included(base)
click to toggle source
# File lib/guided_interactor.rb, line 25 def self.included(base) base.class_eval do extend ClassMethods include Hooks include Delegator attr_reader :context end end
new(context = {})
click to toggle source
# File lib/guided_interactor.rb, line 47 def initialize(context = {}) @context = Context.build(context) end
Public Instance Methods
call()
click to toggle source
# File lib/guided_interactor.rb, line 66 def call end
rollback()
click to toggle source
# File lib/guided_interactor.rb, line 69 def rollback end
run()
click to toggle source
# File lib/guided_interactor.rb, line 51 def run run! rescue Failure end
run!()
click to toggle source
# File lib/guided_interactor.rb, line 56 def run! with_hooks do call context.called!(self) end rescue StandardError context.rollback! raise end