You are viewing documentation for version 1 of the AWS SDK for Ruby. Version 2 documentation can be found here.
Class: AWS::Record::Errors
- Inherits:
 - 
      Core::IndifferentHash
      
        
- Object
 - Hash
 - Core::IndifferentHash
 - AWS::Record::Errors
 
 
- Includes:
 - Enumerable
 
- Defined in:
 - lib/aws/record/errors.rb
 
Instance Method Summary collapse
- 
  
    
      #[](attribute_name)  ⇒ Array<String> 
    
    
      (also: #on)
    
  
  
  
  
  
  
  
  
  
    
Returns the errors for the atttibute in an array.
 - 
  
    
      #[]=(attribute_name, message = 'is invalid')  ⇒ String 
    
    
      (also: #add)
    
  
  
  
  
  
  
  
  
  
    
Adds an error message to the named attribute.
 - 
  
    
      #add_to_base(message)  ⇒ String 
    
    
  
  
  
  
  
  
  
  
  
    
Adds a general error message (not associated with any particular attribute).
 - 
  
    
      #clear!  ⇒ nil 
    
    
  
  
  
  
  
  
  
  
  
    
Removes all error messages.
 - 
  
    
      #count  ⇒ Integer 
    
    
      (also: #size)
    
  
  
  
  
  
  
  
  
  
    
Returns the number of error messages.
 - 
  
    
      #each {|attribute_name, error_message| ... } ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Yields once for each error message added.
 - 
  
    
      #full_messages  ⇒ Array of Strings 
    
    
      (also: #to_a)
    
  
  
  
  
  
  
  
  
  
    
Returns the errors prefixed by a humanized version of the attribute name.
 - 
  
    
      #to_hash  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Returns a hash of of errors messages.
 
Instance Method Details
#[](attribute_name) ⇒ Array<String> Also known as: on
Returns the errors for the atttibute in an array.
errors.add(:name, 'may not be blank')
errors.add(:name, 'must be less than 30 characters')
errors[:name]
#=> ['may not be blank', 'must be less than 30 characters']
  
      33 34 35  | 
    
      # File 'lib/aws/record/errors.rb', line 33 def [] attribute_name super(attribute_name) || [] end  | 
  
#[]=(attribute_name, message = 'is invalid') ⇒ String Also known as: add
Adds an error message to the named attribute.
errors.add(:name, 'may not be blank')
errors.on(:name)
#=> ['may not be blank']
If you want to add a general error message, then pass :base
for attribute_name, or call #add_to_base.
      51 52 53 54 55 56 57 58  | 
    
      # File 'lib/aws/record/errors.rb', line 51 def []= attribute_name, = 'is invalid' if has_key?(attribute_name) self[attribute_name] << else super(attribute_name, []) end self[attribute_name] end  | 
  
#add_to_base(message) ⇒ String
Adds a general error message (not associated with any particular attribute).
      66 67 68  | 
    
      # File 'lib/aws/record/errors.rb', line 66 def add_to_base add(:base, ) end  | 
  
#clear! ⇒ nil
Removes all error messages.
      133 134 135 136 137 138  | 
    
      # File 'lib/aws/record/errors.rb', line 133 def clear! keys.each do |key| delete(key) end nil end  | 
  
#count ⇒ Integer Also known as: size
Returns the number of error messages.
      71 72 73  | 
    
      # File 'lib/aws/record/errors.rb', line 71 def count values.flatten.length end  | 
  
#each {|attribute_name, error_message| ... } ⇒ Object
Yields once for each error message added.
An attribute_name may yield more than once if there are more than one errors associated with that attirbute.
      85 86 87 88 89 90 91  | 
    
      # File 'lib/aws/record/errors.rb', line 85 def each &block super do |attribute_name, | .each do || yield(attribute_name, ) end end end  | 
  
#full_messages ⇒ Array of Strings Also known as: to_a
Returns the errors prefixed by a humanized version of the attribute name.
errors.add(:name, 'may not be blank')
errors.
#=> ['Name may not be blank']
  
      101 102 103 104 105 106 107 108 109 110  | 
    
      # File 'lib/aws/record/errors.rb', line 101 def = [] each do |attr_name, | << case attr_name when 'base' then .dup else "#{attr_name.capitalize.gsub(/_/, ' ')} #{}" end end end  | 
  
#to_hash ⇒ Object
Returns a hash of of errors messages. Keys are attribute names and values are arrays of error messages.
errors.add(:name, 'may not be blank')
errors.to_hash
#=> { 'name' => ['may not be blank'] }
Please note that the hash values are always arrays, even if there is only one error message for the attribute.
      122 123 124 125 126 127 128 129  | 
    
      # File 'lib/aws/record/errors.rb', line 122 def to_hash hash = {} each do |attr_name, | hash[attr_name] ||= [] hash[attr_name] << .dup end hash end  |