Sha256: a12d5b9dd03a4ea7ce6340e5b23c2692e59dd23aabdbbf2f7a3a9b6b9129da2c
Contents?: true
Size: 1.1 KB
Versions: 17
Compression:
Stored size: 1.1 KB
Contents
require 'fog/ecloud/models/compute/catalog_item' module Fog module Compute class Ecloud class Catalog < Fog::Ecloud::Collection identity :href model Fog::Compute::Ecloud::CatalogItem def all data = service.get_catalog(href).body#[:Locations][:Location][:Catalog][:CatalogEntry] if data[:Locations][:Location].is_a?(Hash) data = [] if data[:Locations][:Location][:Catalog].is_a?(String) && data[:Locations][:Location][:Catalog].empty? load(data) elsif data[:Locations][:Location].is_a?(Array) r_data = [] data[:Locations][:Location].each do |d| unless d[:Catalog].is_a?(String) && d[:Catalog].empty? d[:Catalog][:CatalogEntry].each do |c| r_data << c end end end load(r_data) end end def get(uri) if data = service.get_catalog_item(uri) new(data.body) end rescue Fog::Errors::NotFound nil end end end end end
Version data entries
17 entries across 17 versions & 5 rubygems