def _checkVar(self, sConfVar, expectedType, out_sErrorMsgList, **kwargs): bDeepCopy = kwargs.pop("deepCopy", False) defaultValue = kwargs.pop("default", "NoEntry") bSetVar = False pyobj = self._pyobj try: value = getattr(pyobj, sConfVar) except AttributeError: if defaultValue == "NoEntry": out_sErrorMsgList.append('"{0}" : Missing'.format(sConfVar)) return else: value = defaultValue bSetVar = True if not isinstance(value, expectedType): msg = u'"{0}": Expected {1}, got {2}'.format( sConfVar, expectedType, type(value)) out_sErrorMsgList.append(msg) return if bDeepCopy: copiedValue = deepCopyOf(value) else: copiedValue = copyOf(value) if bSetVar: setattr(pyobj, sConfVar, copiedValue) return copiedValue
def __init__(self , sProperty, metaobj): propertyDct = metaobj.__class__.propertiesDct[sProperty] self.type = propertyDct["type"] self.__isMulti = propertyDct.get("isMulti", False) self.defaultValue = [] if self.__isMulti else copyOf(propertyDct.get("default", "undefined")) sAccessor = propertyDct.get("accessor", "") self._accessor = sAccessor sReader = propertyDct.get("reader", "") self.__readable = True if sReader else False self._reader = sReader self.__read = None sWriter = propertyDct.get("writer", "") self.__writable = True if sWriter else False self._writer = sWriter self.__write = None self.__copyable = propertyDct.get("copyable", False) self.__lazy = propertyDct.get("lazy", False) self._metaobj = metaobj self.accessored = False self.name = sProperty self.propertyDct = propertyDct
def _checkVar(self, sConfVar, expectedType, out_sErrorMsgList, **kwargs): bDeepCopy = kwargs.pop("deepCopy", False) defaultValue = kwargs.pop("default", "NoEntry") bSetVar = False pyobj = self._pyobj try: value = getattr(pyobj, sConfVar) except AttributeError: if defaultValue == "NoEntry": out_sErrorMsgList.append('"{0}" : Missing'.format(sConfVar)) return else: value = defaultValue bSetVar = True if not isinstance(value, expectedType): msg = u'"{0}": Expected {1}, got {2}'.format(sConfVar, expectedType, type(value)) out_sErrorMsgList.append(msg) return if bDeepCopy: copiedValue = deepCopyOf(value) else: copiedValue = copyOf(value) if bSetVar: setattr(pyobj, sConfVar, copiedValue) return copiedValue
def __init__(self, sProperty, metaobj): propertyDct = metaobj.__class__.propertiesDct[sProperty] self.type = propertyDct["type"] self.__isMulti = propertyDct.get("isMulti", False) self.defaultValue = [] if self.__isMulti else copyOf( propertyDct.get("default", "undefined")) sAccessor = propertyDct.get("accessor", "") self._accessor = sAccessor sReader = propertyDct.get("reader", "") self.__readable = True if sReader else False self._reader = sReader self.__read = None sWriter = propertyDct.get("writer", "") self.__writable = True if sWriter else False self._writer = sWriter self.__write = None self.__copyable = propertyDct.get("copyable", False) self.__lazy = propertyDct.get("lazy", False) self._metaobj = metaobj self.accessored = False self.name = sProperty self.propertyDct = propertyDct
def getParam(self, sParam, default="NoEntry"): if default == "NoEntry": value = self.propertyDct[sParam] else: value = self.propertyDct.get(sParam, default) return copyOf(value)
def _getSectionVar(self, sVarName, default="NoEntry", **kwargs): bAsDict = kwargs.get("asDict", False) pyobj = self._pyobj if default == "NoEntry": value = getattr(pyobj, sVarName) else: value = getattr(pyobj, sVarName, default) if bAsDict and not isinstance(value, dict): try: value = dict(value) except ValueError: raise ValueError('Could not cast configuration variable to a dictionary: "{0}".' .format(sVarName)) return copyOf(value)
def _getSectionVar(self, sVarName, default="NoEntry", **kwargs): bAsDict = kwargs.get("asDict", False) pyobj = self._pyobj if default == "NoEntry": value = getattr(pyobj, sVarName) else: value = getattr(pyobj, sVarName, default) if bAsDict and not isinstance(value, dict): try: value = dict(value) except ValueError: raise ValueError( 'Could not cast configuration variable to a dictionary: "{0}".' .format(sVarName)) return copyOf(value)