# File lib/puppet/util/settings.rb, line 682 682: def value(param, environment = nil) 683: param = param.to_sym 684: environment = environment.to_sym if environment 685: 686: # Short circuit to nil for undefined parameters. 687: return nil unless @config.include?(param) 688: 689: # Yay, recursion. 690: #self.reparse() unless [:config, :filetimeout].include?(param) 691: 692: # Check the cache first. It needs to be a per-environment 693: # cache so that we don't spread values from one env 694: # to another. 695: if cached = @cache[environment||"none"][param] 696: return cached 697: end 698: 699: val = uninterpolated_value(param, environment) 700: 701: # Convert it if necessary 702: val = convert(val, environment) 703: 704: # And cache it 705: @cache[environment||"none"][param] = val 706: return val 707: end