class CloudFormer::Functions::FindInMap
Public Class Methods
new(map_name, top_level_key, second_level_key)
click to toggle source
# File lib/cloud_former/functions/find_in_map.rb, line 5 def initialize(map_name, top_level_key, second_level_key) @map_name = map_name @top_level_key = top_level_key @second_level_key = second_level_key end
Public Instance Methods
dump_json()
click to toggle source
# File lib/cloud_former/functions/find_in_map.rb, line 11 def dump_json { 'Fn::FindInMap' => [ @map_name, transform_key(@top_level_key), transform_key(@second_level_key), ], } end
Private Instance Methods
transform_key(key)
click to toggle source
# File lib/cloud_former/functions/find_in_map.rb, line 23 def transform_key(key) if key.is_a?(Parameter) || key.is_a?(PseudoParameter) { 'Ref' => key.get_name } elsif key.is_a?(Function) key.dump_json elsif key.is_a?(Resource) { 'Ref' => key.get_name } else key end end