Class: ChefDK::Policyfile::PolicyGroupRevIDMap

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/chef-dk/policyfile/lister.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

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_nameObject (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_groupObject (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

#eachObject



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

Returns:

  • (Boolean)


99
100
101
# File 'lib/chef-dk/policyfile/lister.rb', line 99

def empty?
  policy_group_names.empty?
end

#format_revision_idsObject



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_lengthObject



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_namesObject



84
85
86
# File 'lib/chef-dk/policyfile/lister.rb', line 84

def policy_group_names
  revision_ids_by_group.keys
end

#unique_revision_idsObject



80
81
82
# File 'lib/chef-dk/policyfile/lister.rb', line 80

def unique_revision_ids
  revision_ids_by_group.values.uniq
end