Sha256: 22bd1741cc6fb79dac5189c02a4d805749fd308699baf0b43fe36f4544d9be9c
Contents?: true
Size: 1.54 KB
Versions: 53
Compression:
Stored size: 1.54 KB
Contents
module Fog module Parsers module AWS module EC2 class DescribeVolumes < Fog::Parsers::Base def reset @attachment = {} @in_attachment_set = false @response = { 'volumeSet' => [] } @volume = { 'attachmentSet' => [] } end def start_element(name, attrs = []) super if name == 'attachmentSet' @in_attachment_set = true end end def end_element(name) if @in_attachment_set case name when 'attachmentSet' @in_attachment_set = false when 'attachTime' @attachment[name] = Time.parse(@value) when 'device', 'instanceId', 'status', 'volumeId' @attachment[name] = @value when 'item' @volume['attachmentSet'] << @attachment @attachment = {} end else case name when 'availabilityZone', 'snapshotId', 'status', 'volumeId' @volume[name] = @value when 'createTime' @volume[name] = Time.parse(@value) when 'item' @response['volumeSet'] << @volume @volume = { 'attachmentSet' => [] } when 'requestId' @response[name] = @value when 'size' @volume[name] = @value.to_i end end end end end end end end
Version data entries
53 entries across 53 versions & 2 rubygems