Class: ChefDK::Policyfile::PolicyGroupRevIDMap
- Inherits:
-
Object
- Object
- ChefDK::Policyfile::PolicyGroupRevIDMap
- Includes:
- Enumerable
- Defined in:
- lib/chef-dk/policyfile/lister.rb
Instance Attribute Summary collapse
-
#policy_name ⇒ Object
readonly
Returns the value of attribute policy_name.
-
#revision_ids_by_group ⇒ Object
readonly
Returns the value of attribute revision_ids_by_group.
Instance Method Summary collapse
- #each ⇒ Object
- #empty? ⇒ Boolean
- #format_revision_ids ⇒ Object
-
#initialize(policy_name, revision_ids_by_group) ⇒ PolicyGroupRevIDMap
constructor
A new instance of PolicyGroupRevIDMap.
- #max_group_name_length ⇒ Object
- #policy_group_names ⇒ Object
- #unique_revision_ids ⇒ Object
Constructor Details
#initialize(policy_name, revision_ids_by_group) ⇒ PolicyGroupRevIDMap
Returns a new instance of PolicyGroupRevIDMap.
75 76 77 78 |
# File 'lib/chef-dk/policyfile/lister.rb', line 75 def initialize(policy_name, revision_ids_by_group) @policy_name = policy_name @revision_ids_by_group = revision_ids_by_group end |
Instance Attribute Details
#policy_name ⇒ Object (readonly)
Returns the value of attribute policy_name.
72 73 74 |
# File 'lib/chef-dk/policyfile/lister.rb', line 72 def policy_name @policy_name end |
#revision_ids_by_group ⇒ Object (readonly)
Returns the value of attribute revision_ids_by_group.
73 74 75 |
# File 'lib/chef-dk/policyfile/lister.rb', line 73 def revision_ids_by_group @revision_ids_by_group end |
Instance Method Details
#each ⇒ Object
103 104 105 106 107 |
# File 'lib/chef-dk/policyfile/lister.rb', line 103 def each revision_ids_by_group.each do |group_name, rev_id| yield group_name, rev_id end end |
#empty? ⇒ Boolean
99 100 101 |
# File 'lib/chef-dk/policyfile/lister.rb', line 99 def empty? policy_group_names.empty? end |
#format_revision_ids ⇒ Object
92 93 94 95 96 97 |
# File 'lib/chef-dk/policyfile/lister.rb', line 92 def format_revision_ids revision_ids_by_group.inject({}) do |map, (group_name, rev_id)| map[group_name] = yield rev_id map end end |
#max_group_name_length ⇒ Object
88 89 90 |
# File 'lib/chef-dk/policyfile/lister.rb', line 88 def max_group_name_length policy_group_names.map(&:size).max end |
#policy_group_names ⇒ Object
84 85 86 |
# File 'lib/chef-dk/policyfile/lister.rb', line 84 def policy_group_names revision_ids_by_group.keys end |
#unique_revision_ids ⇒ Object
80 81 82 |
# File 'lib/chef-dk/policyfile/lister.rb', line 80 def unique_revision_ids revision_ids_by_group.values.uniq end |