Class: MVCLI::Actions::Action

Inherits:
Object
  • Object
show all
Defined in:
lib/mvcli/actions.rb

Instance Method Summary collapse

Constructor Details

#initialize(loader, renderer, controller, method) ⇒ Action

Returns a new instance of Action.



18
19
20
21
22
23
# File 'lib/mvcli/actions.rb', line 18

def initialize(loader, renderer, controller, method)
  @loader = loader
  @renderer = renderer
  @controller = controller
  @method = method
end

Instance Method Details

#call(command, bindings = Map.new) ⇒ Object



25
26
27
28
29
30
31
# File 'lib/mvcli/actions.rb', line 25

def call(command, bindings = Map.new)
  controller = @loader.load :controller, @controller, bindings
  context = controller.send @method
  path = [@controller, @method].join('/')
  @renderer.render command.output, path, context
  return 0
end