Method: Puppet::Settings::Values#set
- Defined in:
- lib/puppet/settings.rb
#set(name, value) ⇒ Object
1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 |
# File 'lib/puppet/settings.rb', line 1556 def set(name, value) default = @defaults[name] if !default raise ArgumentError, _("Attempt to assign a value to unknown setting %{name}") % { name: name.inspect } end # This little exception-handling dance ensures that a hook is # able to check whether a value for itself has been explicitly # set, while still preserving the existing value if the hook # throws (as was existing behavior) old_value = @values[name] @values[name] = value begin if default.has_hook? default.handle(value) end rescue Exception => e @values[name] = old_value raise e end end |