ManageIQ/manageiq — pull request #394 by blomquisg (2014-08-14 16:52:50+00:00)
Title: Fix Openstack Refresh with no volumes

If no volumes are present in Cinder, then the "#process_collection_item" method
is never called, and that method creates the entry in the "@data" object in the
ems_refresh parser.

Part of the fix here is to add the "@data[key] ||= []" to "#process_collection"
so that the "@data" object at least contains an empty array instead of simply
nil.

Secondly, it's still necessary to protect the "#link_storage_associations" from
attempting to dereference the array because it's possible that the Cinder
service may not even be available.

https://bugzilla.redhat.com/show_bug.cgi?id=1130118