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.



21
22
23
24
25
26
# File 'lib/mvcli/actions.rb', line 21

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

Instance Method Details

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



28
29
30
31
32
33
34
# File 'lib/mvcli/actions.rb', line 28

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