Class: Facter::Resolvers::BaseResolver
- Inherits:
-
Object
- Object
- Facter::Resolvers::BaseResolver
show all
- Defined in:
- lib/resolvers/base_resolver.rb
Direct Known Subclasses
Agent, Aix::Filesystem, Aix::LoadAverages, Aix::Mountpoints, Aix::Networking, Aix::Partitions, Architecture, Augeas, DMIBios, DMIComputerSystem, DebianVersion, EosRelease, Facterversion, Hardware, HardwareArchitecture, Hostname, Identity, Kernel, Linux::Disk, Linux::DmiBios, Linux::Filesystems, Linux::FipsEnabled, Linux::LoadAverages, Linux::Memory, Linux::Mountpoints, Linux::Processors, Lpar, LsbRelease, Macosx::DmiBios, Macosx::Filesystems, Macosx::Ipaddress, Macosx::LoadAverages, Macosx::Mountpoints, Macosx::Processors, Macosx::SwapMemory, Macosx::SystemMemory, Memory, NetKVM, Networking, NetworkingLinux, OsLevel, OsRelease, Partitions, Path, PosxIdentity, Processors, ProductRelease, PuppetVersionResolver, RedHatRelease, Ruby, SELinux, Solaris::Filesystem, Solaris::Ipaddress, Solaris::ZFS, Solaris::ZPool, SolarisRelease, SolarisZone, SolarisZoneName, SshResolver, SuseRelease, SwVers, System32, SystemProfiler, Timezone, Uname, Uptime, Virtualization, WinOsDescription, Windows::Fips, Windows::Ssh, Windows::Uptime, Wpar
Class Method Summary
collapse
Class Method Details
.invalidate_cache ⇒ Object
10
11
12
|
# File 'lib/resolvers/base_resolver.rb', line 10
def self.invalidate_cache
@fact_list = {}
end
|
.log ⇒ Object
6
7
8
|
# File 'lib/resolvers/base_resolver.rb', line 6
def self.log
@log ||= Log.new(self)
end
|
.post_resolve(_fact_name) ⇒ Object
28
29
30
|
# File 'lib/resolvers/base_resolver.rb', line 28
def self.post_resolve(_fact_name)
raise NotImplementedError, "You must implement post_resolve(fact_name) method in #{name}"
end
|
.resolve(fact_name) ⇒ Object
18
19
20
21
22
23
24
25
26
|
# File 'lib/resolvers/base_resolver.rb', line 18
def self.resolve(fact_name)
@semaphore.synchronize do
subscribe_to_manager
post_resolve(fact_name)
end
rescue LoadError => e
log.debug("resolving fact #{fact_name}, but #{e}")
@fact_list[fact_name] = nil
end
|
.subscribe_to_manager ⇒ Object