Sha256: 2358dfe329b4ce0347997b6568540a58836f11227f357b1618f5e10694f59d85

Contents?: true

Size: 812 Bytes

Versions: 11

Compression:

Stored size: 812 Bytes

Contents

module Fog
  module Compute
    class Vsphere
      class Real
        def get_datastore(name, datacenter_name)
          datastore = get_raw_datastore(name, datacenter_name)
          raise(Fog::Compute::Vsphere::NotFound) unless datastore
          datastore_attributes(datastore, datacenter_name)
        end

        protected

        def get_raw_datastore(name, datacenter_name)
          dc = find_raw_datacenter(datacenter_name)

          connection.serviceContent.viewManager.CreateContainerView({
            :container  => dc.datastoreFolder,
            :type       =>  ["Datastore"],
            :recursive  => true
          }).view.select{|ds| ds.name == name}.first
        end
      end

      class Mock
        def get_datastore(name, datacenter_name)
        end
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
fog-vsphere-2.0.0 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.13.1 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.13.0 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.12.0 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.11.3 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.11.2 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.11.1 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.11.0 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.10.0 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.9.2 lib/fog/vsphere/requests/compute/get_datastore.rb
fog-vsphere-1.9.1 lib/fog/vsphere/requests/compute/get_datastore.rb