def _getEntry(self, option_list, defaultEntry, defaultEntry_fallback):
		if defaultEntry.value != noDefault:
			self._curContainer.setDefault(defaultEntry)
		# Assemble matching config entries and combine them
		entries = self._matchEntries(self._curContainer, option_list)
		if defaultEntry.value != noDefault:
			entries.append(defaultEntry_fallback)
		self._log.log(logging.DEBUG1, 'Used config entries:')
		for entry in entries:
			self._log.log(logging.DEBUG1, '  %s (%s | %s)', entry.format(printSection = True), entry.source, entry.order)
		curEntry = ConfigEntry.combineEntries(entries)
		# Ensure that fallback default value is stored in persistent storage
		if (defaultEntry.value != noDefault) and defaultEntry_fallback.used:
			self._curContainer.setDefault(defaultEntry_fallback)
		return curEntry
Example #2
0
 def _getEntry(self, option_list, defaultEntry, defaultEntry_fallback):
     if defaultEntry.value != noDefault:
         self._curContainer.setDefault(defaultEntry)
     # Assemble matching config entries and combine them
     entries = self._matchEntries(self._curContainer, option_list)
     if defaultEntry.value != noDefault:
         entries.append(defaultEntry_fallback)
     self._log.log(logging.DEBUG1, 'Used config entries:')
     for entry in entries:
         self._log.log(logging.DEBUG1, '  %s (%s | %s)',
                       entry.format(printSection=True), entry.source,
                       entry.order)
     curEntry = ConfigEntry.combineEntries(entries)
     # Ensure that fallback default value is stored in persistent storage
     if (defaultEntry.value != noDefault) and defaultEntry_fallback.used:
         self._curContainer.setDefault(defaultEntry_fallback)
     return curEntry
	def get(self, option_list, default_str, persistent):
		oldEntry = None
		if self._oldContainer.enabled: # If old container is enabled => return stored entry
			oldEntry = ConfigEntry.combineEntries(self._matchEntries(self._oldContainer, option_list))
		# Process current entry
		(defaultEntry, defaultEntry_fallback) = self._getDefaultEntries(option_list, default_str, persistent, oldEntry)
		curEntry = self._getEntry(option_list, defaultEntry, defaultEntry_fallback)
		if curEntry is None:
			raise ConfigError('"[%s] %s" does not exist!' % (self._getSection(specific = False), option_list[0]))
		description = 'Using user supplied %s'
		if persistent and defaultEntry.used:
			description = 'Using persistent    %s'
		elif defaultEntry.used:
			description = 'Using default value %s'
		elif '!' in curEntry.section:
			description = 'Using dynamic value %s'
		self._log.log(logging.INFO2, description, curEntry.format(printSection = True))
		return (oldEntry, curEntry)
Example #4
0
 def get(self, option_list, default_str, persistent):
     oldEntry = None
     if self._oldContainer.enabled:  # If old container is enabled => return stored entry
         oldEntry = ConfigEntry.combineEntries(
             self._matchEntries(self._oldContainer, option_list))
     # Process current entry
     (defaultEntry, defaultEntry_fallback) = self._getDefaultEntries(
         option_list, default_str, persistent, oldEntry)
     curEntry = self._getEntry(option_list, defaultEntry,
                               defaultEntry_fallback)
     if curEntry is None:
         raise ConfigError(
             '"[%s] %s" does not exist!' %
             (self._getSection(specific=False), option_list[0]))
     description = 'Using user supplied %s'
     if persistent and defaultEntry.used:
         description = 'Using persistent    %s'
     elif defaultEntry.used:
         description = 'Using default value %s'
     elif '!' in curEntry.section:
         description = 'Using dynamic value %s'
     self._log.log(logging.INFO2, description,
                   curEntry.format(printSection=True))
     return (oldEntry, curEntry)