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.



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

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

Instance Method Details

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



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

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