Method: Puppet::Provider::Package::Windows::Package.each

Defined in:
lib/puppet/provider/package/windows/package.rb

.each(&block) ⇒ Object

Enumerate each package. The appropriate package subclass will be yielded.



26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/puppet/provider/package/windows/package.rb', line 26

def self.each(&block)
  with_key do |key, values|
    name = key.name.match(/^.+\\([^\\]+)$/).captures[0]

    [MsiPackage, ExePackage].find do |klass|
      pkg = klass.from_registry(name, values)
      if pkg
        yield pkg
      end
    end
  end
end