Sha256: 99499eb428684ecef4a888523b3a790660958e9305fcb2c89048982e39f32bd3

Contents?: true

Size: 875 Bytes

Versions: 1

Compression:

Stored size: 875 Bytes

Contents

module ObjectAttorney
  module ImportedErrors

    protected #################### PROTECTED METHODS DOWN BELOW ######################

    def clear_imported_errors
      @imported_errors = {}
    end

    def populate_imported_errors
      if respond_to?(:represented_object)
        represented_object.errors.each { |key, value| @imported_errors[key] = value } if represented_object.present?
      else
        errors.each { |key, value| @imported_errors[key] = value }
      end
    end

    def validate_imported_errors
      imported_errors = (@imported_errors || {})
      
      incorporate_errors_from imported_errors

      imported_errors.empty?
    end

    private #################### PRIVATE METHODS DOWN BELOW ######################
    
    def incorporate_errors_from(errors)
      errors.each { |key, value| self.errors.add(key, value) }
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
object_attorney-2.5.0 lib/object_attorney/imported_errors.rb