mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
Merge pull request #2155 from rsalm/vcloud_director_catalog_items_fix
[vcloud_director] Fix listing catalog items when only a single item exists
This commit is contained in:
commit
40c4dc75d4
4 changed files with 7 additions and 3 deletions
|
@ -173,6 +173,10 @@ module Fog
|
|||
items = item_list.map {|item| get_by_id(item[:id])}
|
||||
load(items)
|
||||
end
|
||||
|
||||
def ensure_list(items)
|
||||
items.is_a?(Hash) ? [items] : items
|
||||
end
|
||||
end
|
||||
|
||||
class Real
|
||||
|
|
|
@ -14,7 +14,7 @@ module Fog
|
|||
|
||||
def item_list
|
||||
data = service.get_catalog(catalog.id).body
|
||||
items = data[:CatalogItems][:CatalogItem].select { |link| link[:type] == "application/vnd.vmware.vcloud.catalogItem+xml" }
|
||||
items = ensure_list(data[:CatalogItems][:CatalogItem]).select { |link| link[:type] == "application/vnd.vmware.vcloud.catalogItem+xml" }
|
||||
items.each{|item| service.add_id_from_href!(item) }
|
||||
items
|
||||
end
|
||||
|
|
|
@ -19,7 +19,7 @@ module Fog
|
|||
|
||||
def item_list
|
||||
data = service.get_organizations.body
|
||||
orgs = data[:Org].is_a?(Hash) ? [data[:Org]] : data[:Org]
|
||||
orgs = ensure_list(data[:Org])
|
||||
orgs.each {|org| service.add_id_from_href!(org)}
|
||||
orgs
|
||||
end
|
||||
|
|
|
@ -21,7 +21,7 @@ module Fog
|
|||
|
||||
def item_list
|
||||
data = service.get_tasks_list(organization.id).body
|
||||
tasks = data[:Task].is_a?(Array) ? data[:Task] : [data[:Task]]
|
||||
tasks = ensure_list(data[:Task])
|
||||
tasks.each {|task| service.add_id_from_href!(task)}
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue