Class: Stacker::Resolver
- Inherits:
-
Object
- Object
- Stacker::Resolver
- Defined in:
- lib/stacker/resolver.rb
Instance Attribute Summary collapse
-
#parameters ⇒ Object
readonly
Returns the value of attribute parameters.
-
#region ⇒ Object
readonly
Returns the value of attribute region.
Instance Method Summary collapse
- #dependencies ⇒ Object
-
#initialize(region, parameters) ⇒ Resolver
constructor
A new instance of Resolver.
- #resolved ⇒ Object
Constructor Details
#initialize(region, parameters) ⇒ Resolver
Returns a new instance of Resolver.
6 7 8 |
# File 'lib/stacker/resolver.rb', line 6 def initialize region, parameters @region, @parameters = region, parameters end |
Instance Attribute Details
#parameters ⇒ Object (readonly)
Returns the value of attribute parameters.
4 5 6 |
# File 'lib/stacker/resolver.rb', line 4 def parameters @parameters end |
#region ⇒ Object (readonly)
Returns the value of attribute region.
4 5 6 |
# File 'lib/stacker/resolver.rb', line 4 def region @region end |
Instance Method Details
#dependencies ⇒ Object
10 11 12 13 14 15 16 |
# File 'lib/stacker/resolver.rb', line 10 def dependencies @dependencies ||= parameters.values.flatten.select { |value| value.is_a?(Hash) }.map { |ref| "#{ref.fetch('Stack')}.#{ref.fetch('Output')}" } end |
#resolved ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/stacker/resolver.rb', line 18 def resolved @resolved ||= Hash[parameters.map do |name, value| if value.is_a? Hash value = resolve_reference(value) elsif value.is_a? Array value = value.map do |ref| ref.is_a?(Hash) ? resolve_reference(ref) : ref end.join ',' end [ name, value ] end] end |