Sha256: 64e3dcfcc0aff2ad8ddd6044df24855962c3b5bafa5b5b0971f9c2e19dbe6b5d

Contents?: true

Size: 755 Bytes

Versions: 1

Compression:

Stored size: 755 Bytes

Contents

require 'aldous/logging_wrapper'

module Aldous
  module Controller
    module Action
      class Wrapper
        attr :controller_action

        def initialize(controller_action)
          @controller_action = controller_action
        end

        def preconditions
          controller_action.preconditions
        end

        def default_view_data
          controller_action.default_view_data
        end

        def default_error_respondable
          controller_action.default_error_respondable
        end

        def perform
          controller_action.perform
        rescue => e
          ::Aldous::LoggingWrapper.log(e)
          controller_action.build_view(default_error_respondable, errors: [e])
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
aldous-1.0.0 lib/aldous/controller/action/wrapper.rb