Exemplo n.º 1
0
    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 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)
Exemplo n.º 8
0
    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)