Sha256: 16d1c1c772364ebcb9edf829c68f291673d8cae6b7fcc3518709fb347012343b
Contents?: true
Size: 1.18 KB
Versions: 53
Compression:
Stored size: 1.18 KB
Contents
module Fog module Parsers module Terremark module Shared class GetCatalogItem < Fog::Parsers::Base def reset @response = { 'Entity' => {}, 'Properties' => {} } end def start_element(name, attributes) super case name when 'Entity' until attributes.empty? @response['Entity'][attributes.shift] = attributes.shift end when 'CatalogItem' catalog_item = {} until attributes.empty? if attributes.first.is_a?(Array) attribute = attributes.shift catalog_item[attribute.first] = attribute.last else catalog_item[attributes.shift] = attributes.shift end end @response['name'] = catalog_item['name'] when 'Property' @property_key = attributes.last end end def end_element(name) if name == 'Property' @response['Properties'][@property_key] = value end end end end end end end
Version data entries
53 entries across 53 versions & 15 rubygems