Class: Puppet::Settings::Values

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/puppet/settings.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, defaults) ⇒ Values

Returns a new instance of Values.



1317
1318
1319
1320
1321
# File 'lib/puppet/settings.rb', line 1317

def initialize(name, defaults)
  @name = name
  @values = {}
  @defaults = defaults
end

Instance Attribute Details

#nameObject (readonly)



1315
1316
1317
# File 'lib/puppet/settings.rb', line 1315

def name
  @name
end

Instance Method Details

#inspectObject



1341
1342
1343
# File 'lib/puppet/settings.rb', line 1341

def inspect
  %Q{<#{self.class}:#{self.object_id} @name="#{@name}" @values="#{@values}">}
end

#set(name, value) ⇒ Object



1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
# File 'lib/puppet/settings.rb', line 1326

def set(name, value)
  default = @defaults[name]

  if !default
    raise ArgumentError,
      "Attempt to assign a value to unknown setting #{name.inspect}"
  end

  if default.has_hook?
    default.handle(value)
  end

  @values[name] = value
end