diff options
author | elie <elie> | 2005-10-26 21:20:20 +0000 |
---|---|---|
committer | elie <elie> | 2005-10-26 21:20:20 +0000 |
commit | 1fa9b166437354bc7179d0b3e183fe20c158f922 (patch) | |
tree | 856afe3a7803319076ea8eba22861fcc6420ec6b /pysnmp/smi/view.py | |
parent | 1e9098d3668ecfce81236c5f8dd863cc9bd0c7b8 (diff) | |
download | pysnmp-git-1fa9b166437354bc7179d0b3e183fe20c158f922.tar.gz |
* NoSuchInstanceError -> NoSuchObjectError
* do not index MibScalarInstance objects
Diffstat (limited to 'pysnmp/smi/view.py')
-rw-r--r-- | pysnmp/smi/view.py | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/pysnmp/smi/view.py b/pysnmp/smi/view.py index e37ca892..294bc235 100644 --- a/pysnmp/smi/view.py +++ b/pysnmp/smi/view.py @@ -16,6 +16,10 @@ class MibViewController: if self.lastBuildId == self.mibBuilder.lastBuildId: return + MibScalarInstance, = self.mibBuilder.importSymbols( + 'SNMPv2-SMI', 'MibScalarInstance' + ) + # # Create indices # @@ -51,6 +55,8 @@ class MibViewController: globMibMod['typeToModIdx'][n] = modName mibMod['typeToModIdx'][n] = modName elif type(v) == InstanceType: + if isinstance(v, MibScalarInstance): + continue if mibMod['varToNameIdx'].has_key(n): raise error.SmiError( 'Duplicate MIB variable %s::%s has %s' % \ @@ -170,7 +176,7 @@ class MibViewController: nodeName, mibMod['oidToLabelIdx'], mibMod['labelToOidIdx'] ) if oid == label: - raise error.NoSuchInstanceError( + raise error.NoSuchObjectError( str='Can\'t resolve node name %s::%s at %s' % (modName, nodeName, self) ) @@ -185,7 +191,7 @@ class MibViewController: ) oid = mibMod['varToNameIdx'].get(nodeName) if oid is None: - raise error.NoSuchInstanceError( + raise error.NoSuchObjectError( str='No such symbol %s::%s at %s' % (modName, nodeName, self) ) return self.getNodeNameByOid(oid, modName) @@ -204,7 +210,7 @@ class MibViewController: else: try: return self.getNodeNameByOid(nodeName) - except error.NoSuchInstanceError: + except error.NoSuchObjectError: oid, label, suffix = self.getNodeNameByDesc(nodeName[0]) if len(nodeName) == 1: return oid, label, suffix @@ -226,7 +232,7 @@ class MibViewController: 'No module %s at %s' % (modName, self) ) if not mibMod['oidToLabelIdx']: - raise error.NoSuchInstanceError( + raise error.NoSuchObjectError( str='No variables at MIB module %s at %s' % (modName, self) ) oid, label = mibMod['oidToLabelIdx'].items()[0] @@ -240,14 +246,14 @@ class MibViewController: modName ) except KeyError: - raise error.NoSuchInstanceError( + raise error.NoSuchObjectError( str='No name next to %s::%s at %s' % (modName, nodeName, self) ) def getParentNodeName(self, nodeName, modName=''): oid, label, suffix = self.getNodeName(nodeName, modName) if len(oid) < 2: - raise error.NoSuchInstanceError( + raise error.NoSuchObjectError( str='No parent name for %s::%s at %s' % (modName, nodeName, self) ) @@ -268,7 +274,7 @@ class MibViewController: ) m = mibMod['typeToModIdx'].get(typeName) if m is None: - raise error.NoSuchInstanceError( + raise error.NoSuchObjectError( str='No such type %s::%s at %s' % (modName, typeName, self) ) return m, typeName @@ -281,7 +287,7 @@ class MibViewController: 'No module %s at %s' % (modName, self) ) if not mibMod['typeToModIdx']: - raise error.NoSuchInstanceError( + raise error.NoSuchObjectError( str='No types at MIB module %s at %s' % (modName, self) ) t = mibMod['typeToModIdx'].keys()[0] @@ -292,6 +298,6 @@ class MibViewController: try: return self.__mibSymbolsIdx[m]['typeToModIdx'].nextKey(t) except KeyError: - raise error.NoSuchInstanceError( + raise error.NoSuchObjectError( str='No type next to %s::%s at %s' % (modName, typeName, self) ) |