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