Class: Lono::Template::Dsl::Builder::Resource::PropertyMover
- Inherits:
-
Object
- Object
- Lono::Template::Dsl::Builder::Resource::PropertyMover
- Defined in:
- lib/lono/template/dsl/builder/resource/property_mover.rb
Overview
Moves the property to the top-level attributes destructively
Instance Method Summary collapse
-
#initialize(resource, logical_id, properties) ⇒ PropertyMover
constructor
A new instance of PropertyMover.
- #move(attribute_name) ⇒ Object
- #move! ⇒ Object
Constructor Details
#initialize(resource, logical_id, properties) ⇒ PropertyMover
Returns a new instance of PropertyMover.
4 5 6 |
# File 'lib/lono/template/dsl/builder/resource/property_mover.rb', line 4 def initialize(resource, logical_id, properties) @resource, @logical_id, @properties = resource, logical_id, properties end |
Instance Method Details
#move(attribute_name) ⇒ Object
14 15 16 17 |
# File 'lib/lono/template/dsl/builder/resource/property_mover.rb', line 14 def move(attribute_name) attribute_value = @properties.delete(attribute_name) @resource[@logical_id][attribute_name] = attribute_value if attribute_value end |
#move! ⇒ Object
8 9 10 11 12 |
# File 'lib/lono/template/dsl/builder/resource/property_mover.rb', line 8 def move! %w[depends_on condition].each do |attribute_name| move(attribute_name.to_sym) end end |