diff options
author | elie <elie> | 2005-07-12 10:47:40 +0000 |
---|---|---|
committer | elie <elie> | 2005-07-12 10:47:40 +0000 |
commit | b4eb62cc017a6e3732ed7b17367b1a6c599e68e2 (patch) | |
tree | 169b4119ba0c03f3ee76baeff53e1cd2f14fe657 /pysnmp/entity/rfc3413/context.py | |
parent | 160b479b0429f7cee07fb22c3cf498e3bff5f90a (diff) | |
download | pysnmp-b4eb62cc017a6e3732ed7b17367b1a6c599e68e2.tar.gz |
initial revision
Diffstat (limited to 'pysnmp/entity/rfc3413/context.py')
-rw-r--r-- | pysnmp/entity/rfc3413/context.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/pysnmp/entity/rfc3413/context.py b/pysnmp/entity/rfc3413/context.py new file mode 100644 index 0000000..a73227f --- /dev/null +++ b/pysnmp/entity/rfc3413/context.py @@ -0,0 +1,31 @@ +# SNMP entity context +from pysnmp import error + +class SnmpContext: + def __init__(self, snmpEngine, contextEngineId=None): + self.contextEngineId = contextEngineId + self.contextNames = { + '': snmpEngine.msgAndPduDsp.mibInstrumController # Default name + } + + def registerContextName(self, contextName, mibInstrum=None): + if self.contextNames.has_key(contextName): + raise error.PySnmpError( + 'Duplicate contextName %s' % contextName + ) + if mibInstrum is None: + self.contextName[contextName] = self.contextName[''] + else: + self.contextName[contextName] = mibInstrum + + def unregisterContextName(self, contextName): + if self.contextNames.has_key(contextName): + del self.contextName[contextName] + + def getMibInstrum(self, contextName): + if not self.contextNames.has_key(contextName): + raise error.PySnmpError( + 'Missing contextName %s' % contextName + ) + else: + return self.contextNames[contextName] |