class Stackit::ParameterResolver

Attributes

stacks[RW]

Public Class Methods

new(stacks) click to toggle source
# File lib/stackit/stack/parameter_resolver.rb, line 7
def initialize(stacks)
  self.stacks = stacks.is_a?(Array) ? stacks : [stacks]
end

Public Instance Methods

resolve(parameter) click to toggle source
# File lib/stackit/stack/parameter_resolver.rb, line 11
def resolve(parameter)
  if parameter.is_a?(Array)
    resolve_parameters(parameter)
  else
    resolve_parameter(parameter)
  end
end

Private Instance Methods

resolve_parameter(key) click to toggle source
# File lib/stackit/stack/parameter_resolver.rb, line 21
def resolve_parameter(key)
  stacks.each do |_stack|
    value = _stack[key.to_s]
    return value unless value.nil?
  end
  nil
end
resolve_parameters(keys) click to toggle source
# File lib/stackit/stack/parameter_resolver.rb, line 29
def resolve_parameters(keys)
  values = []
  stacks.each do |s|
    keys.each do |key|
      value = s[key.to_s]
      values << value unless value.nil?
    end
  end
  values.join(',')
end