Sha256: eee4f4b78a2b1673a37cef672d14f62f182c258a4c0629539a6353a9a0746ba8

Contents?: true

Size: 723 Bytes

Versions: 2

Compression:

Stored size: 723 Bytes

Contents

module Fog
  module Compute
    class Vsphere
      class Real
        def get_datastore(name, datacenter_name)
          datastore = list_datastores(datacenter: datacenter_name).detect { |ds| ds[:name] == name }
          raise(Fog::Compute::Vsphere::NotFound) unless datastore
          datastore
        end

        protected

        def get_raw_datastore(name, datacenter_name)
          get_raw_datastores(datacenter_name).detect { |ds| ds.name == name }
        end

        def get_raw_datastores(datacenter_name)
          list_container_view(datacenter_name, 'Datastore', :datastoreFolder)
        end
      end

      class Mock
        def get_datastore(name, datacenter_name); 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_datastore.rb
fog-vsphere-2.4.0 lib/fog/vsphere/requests/compute/get_datastore.rb