class Fog::Parsers::AWS::Compute::DescribeVolumes

Public Instance Methods

end_element(name) click to toggle source
# File lib/fog/aws/parsers/compute/describe_volumes.rb, line 24
def end_element(name)
  if @in_attachment_set
    case name
    when 'attachmentSet'
      @in_attachment_set = false
    when 'attachTime'
      @attachment[name] = Time.parse(value)
    when 'deleteOnTermination'
      @attachment[name] = value == 'true'
    when 'device', 'instanceId', 'status', 'volumeId', 'kmsKeyId'
      @attachment[name] = value
    when 'item'
      @volume['attachmentSet'] << @attachment
      @attachment = {}
    end
  elsif @in_tag_set
    case name
    when 'key', 'value'
      @tag[name] = value
    when 'item'
      @volume['tagSet'][@tag['key']] = @tag['value']
      @tag = {}
    when 'tagSet'
      @in_tag_set = false
    end
  else
    case name
    when 'availabilityZone', 'snapshotId', 'status', 'volumeId', 'volumeType'
      @volume[name] = value
    when 'createTime'
      @volume[name] = Time.parse(value)
    when 'item'
      @response['volumeSet'] << @volume
      @volume = { 'attachmentSet' => [], 'tagSet' => {} }
    when 'requestId'
      @response[name] = value
    when 'size', 'iops'
      @volume[name] = value.to_i
    when 'encrypted'
      @volume[name] = (value == 'true')
    end
  end
end
reset() click to toggle source
# File lib/fog/aws/parsers/compute/describe_volumes.rb, line 6
def reset
  @attachment = {}
  @in_attachment_set = false
  @response = { 'volumeSet' => [] }
  @tag = {}
  @volume = { 'attachmentSet' => [], 'tagSet' => {} }
end
start_element(name, attrs = []) click to toggle source
Calls superclass method
# File lib/fog/aws/parsers/compute/describe_volumes.rb, line 14
def start_element(name, attrs = [])
  super
  case name
  when 'attachmentSet'
    @in_attachment_set = true
  when 'tagSet'
    @in_tag_set = true
  end
end