Sha256: dbe991bc43a30d2048c6b66219f68eb4a322b364c799547c37699559b6365096

Contents?: true

Size: 568 Bytes

Versions: 19

Compression:

Stored size: 568 Bytes

Contents

class RbVmomi::VIM::PropertyCollector
  def collectMultiple objs, *pathSet
    return {} if objs.empty?

    klasses = objs.map{|x| x.class}.uniq 
    klass = if klasses.length > 1
      # common superclass
      klasses.map(&:ancestors).inject(&:&)[0]
    else
      klasses.first
    end

    spec = {
      :objectSet => objs.map{|x| { :obj => x }},
      :propSet => [{
        :pathSet => pathSet,
        :type => klass.wsdl_name
      }]
    }
    res = RetrieveProperties(:specSet => [spec])
    Hash[res.map do |x|
      [x.obj, x.to_hash]
    end]
  end
end

Version data entries

19 entries across 19 versions & 4 rubygems

Version Path
rbvmomi-1.8.5 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.8.4 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.8.3 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.9.4 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.9.3 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.9.2 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.9.1 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.9.0 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.8.2 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.8.2.pre lib/rbvmomi/vim/PropertyCollector.rb
mkuzmin-rbvmomi-1.8.2.1 lib/rbvmomi/vim/PropertyCollector.rb
vagrant-rbvmomi-1.8.1 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.8.1 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.8.0 lib/rbvmomi/vim/PropertyCollector.rb
gapinc-rbvmomi-1.6.1 lib/rbvmomi/vim/PropertyCollector.rb
gapinc-rbvmomi-1.6.0 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.6.0 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.5.1 lib/rbvmomi/vim/PropertyCollector.rb
rbvmomi-1.5.0 lib/rbvmomi/vim/PropertyCollector.rb