diff options
Diffstat (limited to 'pysnmp/entity/rfc3413/oneliner/mibvar.py')
-rw-r--r-- | pysnmp/entity/rfc3413/oneliner/mibvar.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/pysnmp/entity/rfc3413/oneliner/mibvar.py b/pysnmp/entity/rfc3413/oneliner/mibvar.py index 6846334..cb7b163 100644 --- a/pysnmp/entity/rfc3413/oneliner/mibvar.py +++ b/pysnmp/entity/rfc3413/oneliner/mibvar.py @@ -1,5 +1,6 @@ from pysnmp.proto import rfc1902 from pysnmp.smi.builder import ZipMibSource +from pysnmp.smi.compiler import addMibCompiler from pysnmp.error import PySnmpError from pyasn1.error import PyAsn1Error @@ -20,6 +21,7 @@ class MibVariable: def __init__(self, *args): self.__args = args self.__mibSourcesToAdd = self.__modNamesToLoad = None + self.__asn1SourcesToAdd = None self.__state = self.stDirty # @@ -56,6 +58,10 @@ class MibVariable: # A gateway to MIBs manipulation routines # + def addAsn1Sources(self, *asn1Sources): + self.__asn1SourcesToAdd = asn1Sources + return self + def addMibSource(self, *mibSources): self.__mibSourcesToAdd = mibSources return self @@ -75,6 +81,13 @@ class MibVariable: mibViewController.mibBuilder.setMibSources(*mibSources) self.__mibSourcesToAdd = None + if self.__asn1SourcesToAdd is not None: + addMibCompiler( + mibViewController.mibBuilder, + sources=self.__asn1SourcesToAdd + ) + self.__asn1SourcesToAdd = None + if self.__modNamesToLoad is not None: mibViewController.mibBuilder.loadModules(*self.__modNamesToLoad) self.__modNamesToLoad = None |