Sha256: 0c931a4b46cd80f58c89f6c7ec2b697bb373662200ffdf82cac0784016e7f3f0
Contents?: true
Size: 1.73 KB
Versions: 101
Compression:
Stored size: 1.73 KB
Contents
module Fog module Parsers module Terremark module Shared class GetInternetServices < Fog::Parsers::Base def reset @in_public_ip_address = false @internet_service = {} @response = { 'InternetServices' => [] } end def start_element(name, attributes) super case name when 'PublicIpAddress' @in_public_ip_address = true end end def end_element(name) case name when 'Description', 'Protocol' @internet_service[name] = @value when 'Enabled' if @value == 'true' @internet_service[name] = true else @internet_service[name] = false end when 'Href', 'Name' if @in_public_ip_address @internet_service['PublicIpAddress'] ||= {} @internet_service['PublicIpAddress'][name] = @value else @internet_service[name] = @value end when 'Id' if @in_public_ip_address @internet_service['PublicIpAddress'] ||= {} @internet_service['PublicIpAddress'][name] = @value.to_i else @internet_service[name] = @value.to_i end when 'InternetService' @response['InternetServices'] << @internet_service @internet_service = {} when 'Port', 'Timeout' @internet_service[name] = @value.to_i when 'PublicIpAddress' @in_public_ip_address = false end end end end end end end
Version data entries
101 entries across 101 versions & 4 rubygems