diff options
author | elie <elie> | 2013-06-21 06:34:22 +0000 |
---|---|---|
committer | elie <elie> | 2013-06-21 06:34:22 +0000 |
commit | 20a21e04fdb09ff2e36822ac539c24ad80628e6c (patch) | |
tree | e477171f68edc73f5a59e1391806bc61efae3d5a /pysnmp/carrier | |
parent | 42a93341a465b3905dee0cbcb342fc1eb4f1b483 (diff) | |
download | pysnmp-20a21e04fdb09ff2e36822ac539c24ad80628e6c.tar.gz |
disptacher vs transport compatibiilty verification moved into
base transport class
Diffstat (limited to 'pysnmp/carrier')
-rw-r--r-- | pysnmp/carrier/asynsock/base.py | 3 | ||||
-rw-r--r-- | pysnmp/carrier/base.py | 7 | ||||
-rw-r--r-- | pysnmp/carrier/twisted/base.py | 3 |
3 files changed, 11 insertions, 2 deletions
diff --git a/pysnmp/carrier/asynsock/base.py b/pysnmp/carrier/asynsock/base.py index 30d9137..83de36c 100644 --- a/pysnmp/carrier/asynsock/base.py +++ b/pysnmp/carrier/asynsock/base.py @@ -2,10 +2,11 @@ import socket, sys import asyncore from pysnmp.carrier import error +from pysnmp.carrier.base import AbstractTransport from pysnmp.carrier.asynsock.dispatch import AsynsockDispatcher from pysnmp import debug -class AbstractSocketTransport(asyncore.dispatcher): +class AbstractSocketTransport(asyncore.dispatcher, AbstractTransport): protoTransportDispatcher = AsynsockDispatcher sockFamily = sockType = None retryCount = 0; retryInterval = 0 diff --git a/pysnmp/carrier/base.py b/pysnmp/carrier/base.py index bb2424e..238da25 100644 --- a/pysnmp/carrier/base.py +++ b/pysnmp/carrier/base.py @@ -156,3 +156,10 @@ class AbstractTransportDispatcher: self.unregisterTransport(tDomain) self.unregisterRecvCbFun() self.unregisterTimerCbFun() + + +class AbstractTransport: + protoTransportDispatcher = None + @classmethod + def isCompatibleWithDispatcher(cls, transportDispatcher): + return isinstance(transportDispatcher, cls.protoTransportDispatcher) diff --git a/pysnmp/carrier/twisted/base.py b/pysnmp/carrier/twisted/base.py index fba21da..fa1da90 100644 --- a/pysnmp/carrier/twisted/base.py +++ b/pysnmp/carrier/twisted/base.py @@ -9,8 +9,9 @@ # Description: twisted DatagramProtocol UDP transport # from pysnmp.carrier.twisted.dispatch import TwistedDispatcher +from pysnmp.carrier.base import AbstractTransport -class AbstractTwistedTransport: +class AbstractTwistedTransport(AbstractTransport): protoTransportDispatcher = TwistedDispatcher """Base Twisted Transport, to be used with TwistedDispatcher""" def __init__(self): |