1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb

42 lines
1.1 KiB
Ruby

module Fog
module Parsers
module AWS
module CloudWatch
class GetMetricStatistics < Fog::Parsers::Base
def reset
@response = { 'GetMetricStatisticsResult' => {'Datapoints' => []}, 'ResponseMetadata' => {} }
reset_datapoint
end
def reset_datapoint
@datapoint = {}
end
def start_element(name, attrs = [])
super
end
def end_element(name)
case name
when 'Average', 'Maximum', 'Minimum', 'SampleCount', 'Sum'
@datapoint[name] = value.to_f
when 'Unit'
@datapoint[name] = value
when 'Timestamp'
@datapoint[name] = Time.parse value
when 'member'
@response['GetMetricStatisticsResult']['Datapoints'] << @datapoint
reset_datapoint
when 'Label'
@response['GetMetricStatisticsResult'][name] = value
when 'RequestId'
@response['ResponseMetadata'][name] = value
end
end
end
end
end
end
end