Current File : //opt/puppetlabs/puppet/lib/ruby/vendor_ruby/facter/framework/formatters/formatter_helper.rb |
# frozen_string_literal: true
module Facter
class FormatterHelper
class << self
def retrieve_facts_to_display_for_user_query(user_queries, resolved_facts)
facts_to_display = FactCollection.new
user_queries.each do |user_query|
fact_collection = build_fact_collection_for_user_query(user_query, resolved_facts)
printable_value = fact_collection.dig_fact(user_query)
facts_to_display.merge!(user_query => printable_value)
end
Facter::Utils.sort_hash_by_key(facts_to_display)
end
def retrieve_fact_collection(resolved_facts)
fact_collection = FactCollection.new.build_fact_collection!(resolved_facts)
Facter::Utils.sort_hash_by_key(fact_collection)
end
def retrieve_fact_value_for_single_query(user_query, resolved_facts)
fact_collection = build_fact_collection_for_user_query(user_query, resolved_facts)
fact_collection = Utils.sort_hash_by_key(fact_collection)
fact_collection.dig_fact(user_query)
end
private
def build_fact_collection_for_user_query(user_query, resolved_facts)
facts_for_query = resolved_facts.select { |resolved_fact| resolved_fact.user_query == user_query }
FactCollection.new.build_fact_collection!(facts_for_query)
end
end
end
end