class Aldous::Controller::Action::ResultExecutionService
Attributes
controller[R]
default_view_data[R]
respondable[R]
Public Class Methods
new(controller, respondable, default_view_data)
click to toggle source
# File lib/aldous/controller/action/result_execution_service.rb, line 16 def initialize(controller, respondable, default_view_data) @controller = controller @respondable = respondable @default_view_data = default_view_data end
perform(controller, respondable, default_view_data)
click to toggle source
# File lib/aldous/controller/action/result_execution_service.rb, line 9 def perform(controller, respondable, default_view_data) self.new(controller, respondable, default_view_data).perform end
Public Instance Methods
perform()
click to toggle source
# File lib/aldous/controller/action/result_execution_service.rb, line 22 def perform respondable.action(controller).execute rescue => e LoggingWrapper.log(e) error_handler = ::Aldous.configuration.error_handler if error_handler.kind_of?(Class) && error_handler.ancestors.include?(Aldous::Respondable::Base) view_builder.build(error_handler, errors: [e]).action(controller).execute else controller.head :internal_server_error end end
Private Instance Methods
view_builder()
click to toggle source
# File lib/aldous/controller/action/result_execution_service.rb, line 37 def view_builder @view_builder ||= Aldous::ViewBuilder.new(controller.view_context, default_view_data) end