Sha256: 55f228b4e5f20a64be8859d3cce49df22d0bf254d4e1c86a86b592cd409d9e0b

Contents?: true

Size: 719 Bytes

Versions: 2

Compression:

Stored size: 719 Bytes

Contents

require 'aldous/logging_wrapper'

module Aldous
  module Controller
    module Action
      class Precondition
        class Wrapper
          attr :precondition

          def initialize(precondition)
            @precondition = precondition
          end

          def default_view_data
            precondition.action.default_view_data
          end

          def default_error_respondable
            precondition.action.default_error_respondable
          end

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

Version data entries

2 entries across 2 versions & 1 rubygems

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