Sha256: 718311a860f64a4b8bcc12963178b4b8ac22a7a41a11155369a86035b103b2aa

Contents?: true

Size: 1.43 KB

Versions: 42

Compression:

Stored size: 1.43 KB

Contents

# 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 = {}
        user_queries.each do |user_query|
          fact_collection = build_fact_collection_for_user_query(user_query, resolved_facts)

          splitted_user_query = Utils.split_user_query(user_query)
          printable_value = fact_collection.dig(*splitted_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)
        splitted_user_query = Utils.split_user_query(user_query)
        fact_collection.dig(*splitted_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

Version data entries

42 entries across 42 versions & 1 rubygems

Version Path
facter-4.0.52 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.51 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.50 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.49 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.48 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.47 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.46 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.44 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.43 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.42 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.41 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.40 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.39 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.38 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.37 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.36 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.35 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.34 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.33 lib/facter/framework/formatters/formatter_helper.rb
facter-4.0.32 lib/facter/framework/formatters/formatter_helper.rb