class Aldous::ControllerAction
Attributes
controller[R]
Public Class Methods
build(controller)
click to toggle source
# File lib/aldous/controller_action.rb, line 11 def build(controller) Aldous::Controller::Action::Wrapper.new(new(controller)) end
inherited(klass)
click to toggle source
# File lib/aldous/controller_action.rb, line 19 def inherited(klass) # expose methods from controller to the service, according to configuration ::Aldous.configuration.controller_methods_exposed_to_action.each do |method_name| unless klass.method_defined?(method_name) define_method method_name do controller.send(method_name) end end end end
new(controller, view_builder = nil)
click to toggle source
# File lib/aldous/controller_action.rb, line 33 def initialize(controller, view_builder = nil) @controller = controller @view_builder = view_builder end
perform(controller)
click to toggle source
# File lib/aldous/controller_action.rb, line 15 def perform(controller) build(controller).perform end
Public Instance Methods
build_view(respondable_class, extra_data = {})
click to toggle source
NOTE deprecated
# File lib/aldous/controller_action.rb, line 61 def build_view(respondable_class, extra_data = {}) # deprecated view_builder.build(respondable_class, extra_data) end
default_error_handler(error)
click to toggle source
# File lib/aldous/controller_action.rb, line 50 def default_error_handler(error) ::Aldous::View::Blank::HtmlView end
default_view_data()
click to toggle source
# File lib/aldous/controller_action.rb, line 42 def default_view_data {} end
perform()
click to toggle source
# File lib/aldous/controller_action.rb, line 38 def perform raise NotImplementedError.new("#{self.class.name} must implement method #perform") end
preconditions()
click to toggle source
# File lib/aldous/controller_action.rb, line 46 def preconditions [] end
view_builder()
click to toggle source
# File lib/aldous/controller_action.rb, line 54 def view_builder @view_builder ||= Aldous::ViewBuilder.new(controller.view_context, default_view_data) end