module ExternalErrors

Public Class Methods

included(base) click to toggle source
# File lib/external_errors.rb, line 27
def self.included(base)
  base.class_eval { validate :check_for_external_errors }
end

Public Instance Methods

add_external_error(error) click to toggle source
# File lib/external_errors.rb, line 31
def add_external_error(error)
  external_errors << error
end
add_external_error_to_errors(error) click to toggle source
# File lib/external_errors.rb, line 44
def add_external_error_to_errors(error)
  errors.add(:base, error)
end
add_external_errors(errors) click to toggle source
# File lib/external_errors.rb, line 35
def add_external_errors(errors)
  errors.each { |error| add_external_error error }
end
external_errors() click to toggle source
# File lib/external_errors.rb, line 39
def external_errors
  error_added_cb = proc { |error| add_external_error_to_errors error }
  @external_errors ||= ExternalErrorStore.new error_added_cb
end

Private Instance Methods

check_for_external_errors() click to toggle source
# File lib/external_errors.rb, line 50
def check_for_external_errors
  external_errors.each { |error| add_external_error_to_errors error }
end