summaryrefslogtreecommitdiff
path: root/pysnmp/smi/mibs/SNMPv2-TM.py
diff options
context:
space:
mode:
authorelie <elie>2010-01-12 17:48:23 +0000
committerelie <elie>2010-01-12 17:48:23 +0000
commitc0c72670e6e9cbb78830e588a4fb544366cf5d28 (patch)
treeba21184be296644498b4b878a0d2bfb5682c6aad /pysnmp/smi/mibs/SNMPv2-TM.py
parentb63279a0e29321ae47ee427eda634997ba38f43c (diff)
downloadpysnmp-c0c72670e6e9cbb78830e588a4fb544366cf5d28.tar.gz
cache tuple representation of SnmpUDPAddress value
Diffstat (limited to 'pysnmp/smi/mibs/SNMPv2-TM.py')
-rw-r--r--pysnmp/smi/mibs/SNMPv2-TM.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/pysnmp/smi/mibs/SNMPv2-TM.py b/pysnmp/smi/mibs/SNMPv2-TM.py
index 5a2e123..d74ed41 100644
--- a/pysnmp/smi/mibs/SNMPv2-TM.py
+++ b/pysnmp/smi/mibs/SNMPv2-TM.py
@@ -26,11 +26,12 @@ class SnmpUDPAddress(TextualConvention, OctetString):
# Socket address syntax coercion
def __getitem__(self, i):
- value = (
- string.join(map(lambda x: str(ord(x)), self._value[:4]), '.'),
- (ord(self._value[4:5])) << 8 | ord(self._value[5:6])
- )
- return value[i]
+ if not hasattr(self, '__tuple_value'):
+ self.__tuple_value = (
+ string.join(map(lambda x: str(ord(x)), self._value[:4]), '.'),
+ ord(self._value[4:5]) << 8 | ord(self._value[5:6])
+ )
+ return self.__tuple_value[i]
snmpCLNSDomain = ObjectIdentity(snmpDomains.name + (2,))
snmpCONSDomain = ObjectIdentity(snmpDomains.name + (3,))