Class: RightAws::RdsInterface::DescribeDbInstancesParser

Inherits:
RightAws::RightAWSParser show all
Defined in:
lib/rds/right_rds_interface.rb

Overview


DB Instances

Constant Summary

Constants inherited from RightAws::RightAWSParser

RightAws::RightAWSParser::DEFAULT_XML_LIBRARY

Instance Attribute Summary

Attributes inherited from RightAws::RightAWSParser

#full_tag_name, #result, #tag, #xml_lib, #xmlpath

Instance Method Summary collapse

Methods inherited from RightAws::RightAWSParser

#initialize, #method_missing, #parse, #tag_end, #tag_start, #tagtext, #text, xml_lib, xml_lib=

Constructor Details

This class inherits a constructor from RightAws::RightAWSParser

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class RightAws::RightAWSParser

Instance Method Details

#resetObject

:nodoc:



788
789
790
791
792
793
794
795
796
797
# File 'lib/rds/right_rds_interface.rb', line 788

def reset
  @m = [ 'DBInstance',
         'CreateDBInstanceResult',
         'DeleteDBInstanceResult',
         'ModifyDBInstanceResult',
         'RebootDBInstanceResult',
         'RestoreDBInstanceToPointInTimeResponse',
         'RestoreDBInstanceFromDBSnapshotResult' ]
  @result = { :db_instances => [] }
end

#tagend(name) ⇒ Object



806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
# File 'lib/rds/right_rds_interface.rb', line 806

def tagend(name)
  case name
  when 'Marker'                     then @result[:marker]       = @text
  when 'MaxRecords'                 then @result[:max_records]  = @text.to_i
  when 'DBInstanceIdentifier'       then @db_instance[:aws_id]               = @text
  when 'DBName'                     then @db_instance[:name]                 = @text  # ? is this one used?
  when 'InstanceCreateTime'         then @db_instance[:create_time]          = @text
  when 'Engine'                     then @db_instance[:engine]               = @text
  when 'DBInstanceStatus'           then @db_instance[:status]               = @text
  when 'AllocatedStorage'           then @db_instance[:allocated_storage]    = @text.to_i
  when 'Port'                       then @db_instance[:endpoint_port]        = @text.to_i
  when 'Address'                    then @db_instance[:endpoint_address]     = @text
  when 'MasterUsername'             then @db_instance[:master_username]      = @text
  when 'AvailabilityZone'           then @db_instance[:availability_zone]    = @text
  when 'PreferredMaintenanceWindow' then @db_instance[:preferred_maintenance_window] = @text
  when 'BackupRetentionPeriod'      then @db_instance[:backup_retention_period] = @text
  when 'PreferredBackupWindow'      then @db_instance[:preferred_backup_window] = @text
  when 'MultiAZ'                    then @db_instance[:multi_az]                = @text == 'true'
  when 'DBInstanceClass'
    case @xmlpath
    when /PendingModifiedValues$/ then @db_instance[:pending_modified_values][:instance_class] = @text
    else                               @db_instance[:instance_class] = @text
    end
  when 'MasterUserPassword'         then @db_instance[:pending_modified_values][:master_user_password] = @text
  when 'DBSecurityGroupName'        then @db_security_group[:name]   = @text
  when 'Status'                     then @db_security_group[:status] = @text
  when 'DBParameterGroupName'       then @db_parameter_group[:name]   = @text
  when 'ParameterApplyStatus'       then @db_parameter_group[:status] = @text
  when 'DBSecurityGroup'            then @db_instance[:db_security_groups] << @db_security_group
  when 'DBParameterGroup','DBParameterGroupStatus'
    @db_instance[:db_parameter_group] = @db_parameter_group
  when *@m                          then @result[:db_instances]            << @db_instance
  end
end

#tagstart(name, attributes) ⇒ Object



798
799
800
801
802
803
804
805
# File 'lib/rds/right_rds_interface.rb', line 798

def tagstart(name, attributes)
  case name
    when *@m               then @db_instance = { :db_security_groups => [], 
                                                 :pending_modified_values => {} }
    when 'DBSecurityGroup' then @db_security_group = {}
    when 'DBParameterGroup', 'DBParameterGroupStatus' then @db_parameter_group = {}
  end
end