class Bosh::Template::EvaluationLinkInstance

Attributes

address[R]
az[R]
bootstrap[R]
id[R]
index[R]
name[R]
properties[R]

Public Class Methods

new(name, index, id, az, address, properties, bootstrap) click to toggle source
# File lib/bosh/template/evaluation_link_instance.rb, line 16
def initialize(name, index, id, az, address, properties, bootstrap)
  @name = name
  @index = index
  @id = id
  @az = az
  @address = address
  @properties = properties
  @bootstrap = bootstrap
end

Public Instance Methods

if_p(*names) { |*values| ... } click to toggle source
# File lib/bosh/template/evaluation_link_instance.rb, line 39
def if_p(*names)
  values = names.map do |name|
    value = lookup_property(@properties, name)
    return Bosh::Template::EvaluationContext::ActiveElseBlock.new(self) if value.nil?

    value
  end

  yield(*values)
  Bosh::Template::EvaluationContext::InactiveElseBlock.new
end
p(*args) click to toggle source
# File lib/bosh/template/evaluation_link_instance.rb, line 26
def p(*args)
  names = Array(args[0])

  names.each do |name|
    result = lookup_property(@properties, name)
    return result unless result.nil?
  end

  return args[1] if args.length == 2

  raise UnknownProperty, names
end