Class: Porch::MethodStepDecorator

Inherits:
Object
  • Object
show all
Defined in:
lib/porch/step_decorators/method_step_decorator.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(step, organizer) ⇒ MethodStepDecorator

Returns a new instance of MethodStepDecorator.



5
6
7
8
# File 'lib/porch/step_decorators/method_step_decorator.rb', line 5

def initialize(step, organizer)
  @step = step
  @organizer = organizer
end

Instance Attribute Details

#organizerObject (readonly)

Returns the value of attribute organizer.



3
4
5
# File 'lib/porch/step_decorators/method_step_decorator.rb', line 3

def organizer
  @organizer
end

#stepObject (readonly)

Returns the value of attribute step.



3
4
5
# File 'lib/porch/step_decorators/method_step_decorator.rb', line 3

def step
  @step
end

Class Method Details

.decorates?(step) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/porch/step_decorators/method_step_decorator.rb', line 16

def self.decorates?(step)
  step.is_a?(Symbol) || step.is_a?(String)
end

Instance Method Details

#execute(context) ⇒ Object



10
11
12
13
14
# File 'lib/porch/step_decorators/method_step_decorator.rb', line 10

def execute(context)
  ctx = Context.new(context)
  organizer.send step, ctx
  ctx
end