Sha256: 208120107cc6df19d8b9d59b53d9f0e78598c0c630a34f23f69e5428ed6cd4ea

Contents?: true

Size: 1.14 KB

Versions: 4

Compression:

Stored size: 1.14 KB

Contents

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

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
brightbox-cli-0.13.1 lib/brightbox-cli/vendor/fog/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb
brightbox-cli-0.13.0 lib/brightbox-cli/vendor/fog/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb
fog-0.11.0 lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb
fog-0.10.0 lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb