Class: RightAws::Ec2::QEc2DescribeImageAttributeParser

Inherits:
RightAWSParser show all
Defined in:
lib/ec2/right_ec2.rb

Overview


PARSERS: Image Attribute

Constant Summary

Constants inherited from RightAWSParser

RightAWSParser::DEFAULT_XML_LIBRARY

Instance Attribute Summary

Attributes inherited from RightAWSParser

#result, #xml_lib, #xmlpath

Instance Method Summary collapse

Methods inherited from 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



1397
1398
1399
# File 'lib/ec2/right_ec2.rb', line 1397

def reset
  @result = {}
end

#tagend(name) ⇒ Object



1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
# File 'lib/ec2/right_ec2.rb', line 1383

def tagend(name)
    # right now only 'launchPermission' is supported by Amazon. 
    # But nobody know what will they xml later as attribute. That is why we 
    # check for 'group' and 'userId' inside of 'launchPermission/item'
  case name
    when 'imageId'            then @result[:aws_id] = @text
    when 'group'              then @result[:groups] << @text if @xmlpath == 'DescribeImageAttributeResponse/launchPermission/item'
    when 'userId'             then @result[:users]  << @text if @xmlpath == 'DescribeImageAttributeResponse/launchPermission/item'
    when 'productCode'        then @result[:aws_product_codes] << @text
    when 'kernel'             then @result[:aws_kernel]  = @text
    when 'ramdisk'            then @result[:aws_ramdisk] = @text
    when 'blockDeviceMapping' then @result[:block_device_mapping] = @text
  end
end

#tagstart(name, attributes) ⇒ Object

:nodoc:



1374
1375
1376
1377
1378
1379
1380
1381
1382
# File 'lib/ec2/right_ec2.rb', line 1374

def tagstart(name, attributes)
  case name
    when 'launchPermission'
      @result[:groups] = []
      @result[:users]  = []
    when 'productCodes'
      @result[:aws_product_codes] = []
  end
end