def fillTagValues(self, keyPath, tagValueList, operData):
        initialListSize = tagValueList.getLen()
        for logFunc in self._log("fill-tag-values").debug3Func():
            logFunc("called. operData=%s, keyPath=%s, initialListSize=%d",
                    operData.debugStr(True), keyPath, initialListSize)
        # fill tag values up to current
        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = keyPath.getLen()
            while i < self.myKeyPath.getLen():
                valBegin = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valBegin.setXmlBegin((tag, ns, prefix))
                tagValueList.push((tag, ns), valBegin)
                for logFunc in self._log(
                        "fill-tag-values-adding").debug3Func():
                    logFunc(
                        "adding xml begin. i=%d, valBegin=%s, self.myKeyPath.getLen()=%d",
                        i, valBegin, self.myKeyPath.getLen())
                i += 1

        if operData.isTableLastChangeTicksRequested(
        ) and operData.hasTableLastChangeTicks():
            val = Value()
            val.setUint32(operData.tableLastChangeTicks)
            tagValueList.push(
                ("table-last-change-ticks",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isInterfaceNumberRequested(
        ) and operData.hasInterfaceNumber():
            val = Value()
            val.setInt32(operData.interfaceNumber)
            tagValueList.push(
                ("interface-number",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = self.myKeyPath.getLen() - 1
            while i >= keyPath.getLen():
                valEnd = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valEnd.setXmlEnd((tag, ns, prefix))
                tagValueList.push((tag, ns), valEnd)
                i -= 1

        for logFunc in self._log("fill-tag-values-ended").debug3Func():
            logFunc(
                "ended. operData=%s, keyPath=%s, initialListSize=%d, finalListSize=%d",
                operData.debugStr(True), keyPath, initialListSize,
                tagValueList.getLen())
        return ReturnCodes.kOk
    def fillTagValues(self, keyPath, tagValueList, operData):
        initialListSize = tagValueList.getLen()
        for logFunc in self._log("fill-tag-values").debug3Func():
            logFunc("called. operData=%s, keyPath=%s, initialListSize=%d",
                    operData.debugStr(True), keyPath, initialListSize)
        # fill tag values up to current
        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = keyPath.getLen()
            while i < self.myKeyPath.getLen():
                valBegin = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valBegin.setXmlBegin((tag, ns, prefix))
                tagValueList.push((tag, ns), valBegin)
                for logFunc in self._log(
                        "fill-tag-values-adding").debug3Func():
                    logFunc(
                        "adding xml begin. i=%d, valBegin=%s, self.myKeyPath.getLen()=%d",
                        i, valBegin, self.myKeyPath.getLen())
                i += 1

        if operData.isInterfaceIndexRequested() and operData.hasInterfaceIndex(
        ):
            val = Value()
            val.setUint32(operData.interfaceIndex)
            tagValueList.push(
                ("interface-index",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isSpeedMegabitRequested() and operData.hasSpeedMegabit():
            val = Value()
            val.setUint32(operData.speedMegabit)
            tagValueList.push(
                ("speed-megabit",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isMibAdminStatusRequested() and operData.hasMibAdminStatus(
        ):
            val = Value()
            val.setEnum(operData.mibAdminStatus.getValue())
            tagValueList.push(
                ("mib-admin-status",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isPromiscuousRequested() and operData.hasPromiscuous():
            val = Value()
            val.setEnum(operData.promiscuous.getValue())
            tagValueList.push(
                ("promiscuous",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isMibNameRequested() and operData.hasMibName():
            val = Value()
            val.setString(operData.mibName)
            tagValueList.push(
                ("mib-name",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isMtuRequested() and operData.hasMtu():
            val = Value()
            val.setInt32(operData.mtu)
            tagValueList.push(
                ("mtu",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isCounterDiscontinuityTicksRequested(
        ) and operData.hasCounterDiscontinuityTicks():
            val = Value()
            val.setUint32(operData.counterDiscontinuityTicks)
            tagValueList.push(
                ("counter-discontinuity-ticks",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isMibIanaTypeRequested() and operData.hasMibIanaType():
            val = Value()
            val.setEnum(operData.mibIanaType.getValue())
            tagValueList.push(
                ("mib-iana-type",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isMibSpeed32BitRequested() and operData.hasMibSpeed32Bit():
            val = Value()
            val.setUint32(operData.mibSpeed32Bit)
            tagValueList.push(
                ("mib-speed-32bit",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isSpeedRequested() and operData.hasSpeed():
            val = Value()
            val.setUint64(operData.speed)
            tagValueList.push(
                ("speed",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isConnectorPresentRequested(
        ) and operData.hasConnectorPresent():
            val = Value()
            val.setEnum(operData.connectorPresent.getValue())
            tagValueList.push(
                ("connector-present",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isOperationalStatusRequested(
        ) and operData.hasOperationalStatus():
            val = Value()
            val.setEnum(operData.operationalStatus.getValue())
            tagValueList.push(
                ("operational-status",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = self.myKeyPath.getLen() - 1
            while i >= keyPath.getLen():
                valEnd = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valEnd.setXmlEnd((tag, ns, prefix))
                tagValueList.push((tag, ns), valEnd)
                i -= 1

        for logFunc in self._log("fill-tag-values-ended").debug3Func():
            logFunc(
                "ended. operData=%s, keyPath=%s, initialListSize=%d, finalListSize=%d",
                operData.debugStr(True), keyPath, initialListSize,
                tagValueList.getLen())
        return ReturnCodes.kOk
    def fillTagValues (self, keyPath, tagValueList, operData):
        initialListSize = tagValueList.getLen()
        for logFunc in self._log("fill-tag-values").debug3Func(): logFunc("called. operData=%s, keyPath=%s, initialListSize=%d", operData.debugStr(True), keyPath, initialListSize)
        # fill tag values up to current
        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = keyPath.getLen()
            while i < self.myKeyPath.getLen():
                valBegin = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valBegin.setXmlBegin((tag, ns, prefix))
                tagValueList.push((tag, ns), valBegin)
                for logFunc in self._log("fill-tag-values-adding").debug3Func(): logFunc("adding xml begin. i=%d, valBegin=%s, self.myKeyPath.getLen()=%d", i, valBegin, self.myKeyPath.getLen())
                i+=1
        
        if operData.isInterfaceIndexRequested() and operData.hasInterfaceIndex():
            val = Value()
            val.setUint32(operData.interfaceIndex)
            tagValueList.push(("interface-index", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isSpeedMegabitRequested() and operData.hasSpeedMegabit():
            val = Value()
            val.setUint32(operData.speedMegabit)
            tagValueList.push(("speed-megabit", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isMibAdminStatusRequested() and operData.hasMibAdminStatus():
            val = Value()
            val.setEnum(operData.mibAdminStatus.getValue())
            tagValueList.push(("mib-admin-status", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isPromiscuousRequested() and operData.hasPromiscuous():
            val = Value()
            val.setEnum(operData.promiscuous.getValue())
            tagValueList.push(("promiscuous", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isMibNameRequested() and operData.hasMibName():
            val = Value()
            val.setString(operData.mibName)
            tagValueList.push(("mib-name", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isMtuRequested() and operData.hasMtu():
            val = Value()
            val.setInt32(operData.mtu)
            tagValueList.push(("mtu", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isCounterDiscontinuityTicksRequested() and operData.hasCounterDiscontinuityTicks():
            val = Value()
            val.setUint32(operData.counterDiscontinuityTicks)
            tagValueList.push(("counter-discontinuity-ticks", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isMibIanaTypeRequested() and operData.hasMibIanaType():
            val = Value()
            val.setEnum(operData.mibIanaType.getValue())
            tagValueList.push(("mib-iana-type", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isMibSpeed32BitRequested() and operData.hasMibSpeed32Bit():
            val = Value()
            val.setUint32(operData.mibSpeed32Bit)
            tagValueList.push(("mib-speed-32bit", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isSpeedRequested() and operData.hasSpeed():
            val = Value()
            val.setUint64(operData.speed)
            tagValueList.push(("speed", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isConnectorPresentRequested() and operData.hasConnectorPresent():
            val = Value()
            val.setEnum(operData.connectorPresent.getValue())
            tagValueList.push(("connector-present", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isOperationalStatusRequested() and operData.hasOperationalStatus():
            val = Value()
            val.setEnum(operData.operationalStatus.getValue())
            tagValueList.push(("operational-status", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        
        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = self.myKeyPath.getLen() - 1
            while i >= keyPath.getLen():
                valEnd = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valEnd.setXmlEnd((tag, ns, prefix))
                tagValueList.push((tag, ns), valEnd)
                i-=1

        for logFunc in self._log("fill-tag-values-ended").debug3Func(): logFunc("ended. operData=%s, keyPath=%s, initialListSize=%d, finalListSize=%d",
                                                  operData.debugStr(True), keyPath, initialListSize, tagValueList.getLen())
        return ReturnCodes.kOk
    def fillTagValues (self, keyPath, tagValueList, operData):
        initialListSize = tagValueList.getLen()
        for logFunc in self._log("fill-tag-values").debug3Func(): logFunc("called. operData=%s, keyPath=%s, initialListSize=%d", operData.debugStr(True), keyPath, initialListSize)
        # fill tag values up to current
        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = keyPath.getLen()
            while i < self.myKeyPath.getLen():
                valBegin = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valBegin.setXmlBegin((tag, ns, prefix))
                tagValueList.push((tag, ns), valBegin)
                for logFunc in self._log("fill-tag-values-adding").debug3Func(): logFunc("adding xml begin. i=%d, valBegin=%s, self.myKeyPath.getLen()=%d", i, valBegin, self.myKeyPath.getLen())
                i+=1
        
        if operData.isOutErrorPacketsRequested() and operData.hasOutErrorPackets():
            val = Value()
            val.setUint32(operData.outErrorPackets)
            tagValueList.push(("out-error-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isInErrorPacketsRequested() and operData.hasInErrorPackets():
            val = Value()
            val.setUint32(operData.inErrorPackets)
            tagValueList.push(("in-error-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isInDiscardPacketsRequested() and operData.hasInDiscardPackets():
            val = Value()
            val.setUint32(operData.inDiscardPackets)
            tagValueList.push(("in-discard-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isOutUnicastPacketsRequested() and operData.hasOutUnicastPackets():
            val = Value()
            val.setUint32(operData.outUnicastPackets)
            tagValueList.push(("out-unicast-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isInMulticastPacketsRequested() and operData.hasInMulticastPackets():
            val = Value()
            val.setUint32(operData.inMulticastPackets)
            tagValueList.push(("in-multicast-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isOutBroadcastPacketsRequested() and operData.hasOutBroadcastPackets():
            val = Value()
            val.setUint32(operData.outBroadcastPackets)
            tagValueList.push(("out-broadcast-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isInBroadcastPacketsRequested() and operData.hasInBroadcastPackets():
            val = Value()
            val.setUint32(operData.inBroadcastPackets)
            tagValueList.push(("in-broadcast-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isOutMulticastPacketsRequested() and operData.hasOutMulticastPackets():
            val = Value()
            val.setUint32(operData.outMulticastPackets)
            tagValueList.push(("out-multicast-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isInUnknownProtocolPacketsRequested() and operData.hasInUnknownProtocolPackets():
            val = Value()
            val.setUint32(operData.inUnknownProtocolPackets)
            tagValueList.push(("in-unknown-protocol-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isOutDiscardPacketsRequested() and operData.hasOutDiscardPackets():
            val = Value()
            val.setUint32(operData.outDiscardPackets)
            tagValueList.push(("out-discard-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isInUnicastPacketsRequested() and operData.hasInUnicastPackets():
            val = Value()
            val.setUint32(operData.inUnicastPackets)
            tagValueList.push(("in-unicast-packets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isOutOctetsRequested() and operData.hasOutOctets():
            val = Value()
            val.setUint32(operData.outOctets)
            tagValueList.push(("out-octets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        if operData.isInOctetsRequested() and operData.hasInOctets():
            val = Value()
            val.setUint32(operData.inOctets)
            tagValueList.push(("in-octets", "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"), val)
        
        
        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = self.myKeyPath.getLen() - 1
            while i >= keyPath.getLen():
                valEnd = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valEnd.setXmlEnd((tag, ns, prefix))
                tagValueList.push((tag, ns), valEnd)
                i-=1

        for logFunc in self._log("fill-tag-values-ended").debug3Func(): logFunc("ended. operData=%s, keyPath=%s, initialListSize=%d, finalListSize=%d",
                                                  operData.debugStr(True), keyPath, initialListSize, tagValueList.getLen())
        return ReturnCodes.kOk
    def fillTagValues(self, keyPath, tagValueList, operData):
        initialListSize = tagValueList.getLen()
        for logFunc in self._log("fill-tag-values").debug3Func():
            logFunc("called. operData=%s, keyPath=%s, initialListSize=%d",
                    operData.debugStr(True), keyPath, initialListSize)
        # fill tag values up to current
        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = keyPath.getLen()
            while i < self.myKeyPath.getLen():
                valBegin = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valBegin.setXmlBegin((tag, ns, prefix))
                tagValueList.push((tag, ns), valBegin)
                for logFunc in self._log(
                        "fill-tag-values-adding").debug3Func():
                    logFunc(
                        "adding xml begin. i=%d, valBegin=%s, self.myKeyPath.getLen()=%d",
                        i, valBegin, self.myKeyPath.getLen())
                i += 1

        if operData.isOutErrorPacketsRequested(
        ) and operData.hasOutErrorPackets():
            val = Value()
            val.setUint32(operData.outErrorPackets)
            tagValueList.push(
                ("out-error-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isInErrorPacketsRequested() and operData.hasInErrorPackets(
        ):
            val = Value()
            val.setUint32(operData.inErrorPackets)
            tagValueList.push(
                ("in-error-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isInDiscardPacketsRequested(
        ) and operData.hasInDiscardPackets():
            val = Value()
            val.setUint32(operData.inDiscardPackets)
            tagValueList.push(
                ("in-discard-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isOutUnicastPacketsRequested(
        ) and operData.hasOutUnicastPackets():
            val = Value()
            val.setUint32(operData.outUnicastPackets)
            tagValueList.push(
                ("out-unicast-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isInMulticastPacketsRequested(
        ) and operData.hasInMulticastPackets():
            val = Value()
            val.setUint32(operData.inMulticastPackets)
            tagValueList.push(
                ("in-multicast-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isOutBroadcastPacketsRequested(
        ) and operData.hasOutBroadcastPackets():
            val = Value()
            val.setUint32(operData.outBroadcastPackets)
            tagValueList.push(
                ("out-broadcast-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isInBroadcastPacketsRequested(
        ) and operData.hasInBroadcastPackets():
            val = Value()
            val.setUint32(operData.inBroadcastPackets)
            tagValueList.push(
                ("in-broadcast-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isOutMulticastPacketsRequested(
        ) and operData.hasOutMulticastPackets():
            val = Value()
            val.setUint32(operData.outMulticastPackets)
            tagValueList.push(
                ("out-multicast-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isInUnknownProtocolPacketsRequested(
        ) and operData.hasInUnknownProtocolPackets():
            val = Value()
            val.setUint32(operData.inUnknownProtocolPackets)
            tagValueList.push(
                ("in-unknown-protocol-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isOutDiscardPacketsRequested(
        ) and operData.hasOutDiscardPackets():
            val = Value()
            val.setUint32(operData.outDiscardPackets)
            tagValueList.push(
                ("out-discard-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isInUnicastPacketsRequested(
        ) and operData.hasInUnicastPackets():
            val = Value()
            val.setUint32(operData.inUnicastPackets)
            tagValueList.push(
                ("in-unicast-packets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isOutOctetsRequested() and operData.hasOutOctets():
            val = Value()
            val.setUint32(operData.outOctets)
            tagValueList.push(
                ("out-octets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if operData.isInOctetsRequested() and operData.hasInOctets():
            val = Value()
            val.setUint32(operData.inOctets)
            tagValueList.push(
                ("in-octets",
                 "http://qwilt.com/ns/yang/device/tech/qwilt-tech-interfaces"),
                val)

        if self.myKeyPath.isEqualLen(keyPath, keyPath.getLen()):
            i = self.myKeyPath.getLen() - 1
            while i >= keyPath.getLen():
                valEnd = Value()
                (tag, ns, prefix) = self.myKeyPath.getAt(i).asXmlTag()
                valEnd.setXmlEnd((tag, ns, prefix))
                tagValueList.push((tag, ns), valEnd)
                i -= 1

        for logFunc in self._log("fill-tag-values-ended").debug3Func():
            logFunc(
                "ended. operData=%s, keyPath=%s, initialListSize=%d, finalListSize=%d",
                operData.debugStr(True), keyPath, initialListSize,
                tagValueList.getLen())
        return ReturnCodes.kOk