Sha256: 59d4d9c39692a068c1dbad6d3f1998f357c3b01ed82937fdf96f7f66d202d5fe

Contents?: true

Size: 888 Bytes

Versions: 2

Compression:

Stored size: 888 Bytes

Contents

module Fog
  module Compute
    class Vsphere
      class Real
        def get_cluster(name, datacenter_name)
          cluster = get_raw_cluster(name, datacenter_name)
          raise(Fog::Compute::Vsphere::NotFound) unless cluster
          cluster_attributes(cluster, datacenter_name)
        end

        protected

        def get_raw_cluster(name, datacenter_name_or_obj)
          dc = if datacenter_name_or_obj.is_a?(String)
                 find_raw_datacenter(datacenter_name_or_obj)
               else
                 datacenter_name_or_obj
               end
          dc.find_compute_resource(name)
        end
      end

      class Mock
        def get_cluster(name, datacenter_name)
          data[:clusters].find { |c| c[:name] == name && c[:datacenter] == datacenter_name } ||
            raise(Fog::Compute::Vsphere::NotFound)
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
fog-vsphere-2.5.0 lib/fog/vsphere/requests/compute/get_cluster.rb
fog-vsphere-2.4.0 lib/fog/vsphere/requests/compute/get_cluster.rb