Sha256: 61b19800cbf421bf4a74c6bf31b8f25dcbf585a315f8e372a82756efcd242055
Contents?: true
Size: 1020 Bytes
Versions: 29
Compression:
Stored size: 1020 Bytes
Contents
# frozen_string_literal: true module Facter module Resolvers class DMIComputerSystem < BaseResolver @log = Facter::Log.new(self) @semaphore = Mutex.new @fact_list ||= {} class << self # Name # UUID private def post_resolve(fact_name) @fact_list.fetch(fact_name) { read_fact_from_computer_system(fact_name) } end def read_fact_from_computer_system(fact_name) win = Win32Ole.new computersystem = win.return_first('SELECT Name,UUID FROM Win32_ComputerSystemProduct') unless computersystem @log.debug 'WMI query returned no results for Win32_ComputerSystemProduct with values Name and UUID.' return end build_fact_list(computersystem) @fact_list[fact_name] end def build_fact_list(computersys) @fact_list[:name] = computersys.Name @fact_list[:uuid] = computersys.UUID end end end end end
Version data entries
29 entries across 29 versions & 1 rubygems