Class: Facter::CacheManager
- Inherits:
-
Object
- Object
- Facter::CacheManager
- Defined in:
- lib/framework/core/cache_manager.rb
Instance Method Summary collapse
- #cache_facts(resolved_facts) ⇒ Object
-
#initialize ⇒ CacheManager
constructor
A new instance of CacheManager.
- #resolve_facts(searched_facts) ⇒ Object
Constructor Details
#initialize ⇒ CacheManager
Returns a new instance of CacheManager.
5 6 7 8 9 10 |
# File 'lib/framework/core/cache_manager.rb', line 5 def initialize @groups = {} @log = Log.new(self) @fact_groups = Facter::FactGroups.new @cache_dir = LegacyFacter::Util::Config.facts_cache_dir end |
Instance Method Details
#cache_facts(resolved_facts) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/framework/core/cache_manager.rb', line 26 def cache_facts(resolved_facts) return unless Options[:cache] resolved_facts.each do |fact| cache_fact(fact) end begin write_cache unless @groups.empty? rescue Errno::EACCES => e @log.warn("Could not write cache: #{e.}") end end |
#resolve_facts(searched_facts) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/framework/core/cache_manager.rb', line 12 def resolve_facts(searched_facts) return searched_facts, [] if !File.directory?(@cache_dir) || !Options[:cache] facts = [] searched_facts.each do |fact| res = resolve_fact(fact) facts << res if res end facts.each do |fact| searched_facts.delete_if { |f| f.name == fact.name } end [searched_facts, facts] end |