X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fvpp-api%2Fpython%2Fvpp_papi%2Fvpp_transport_socket.py;h=4341cad3e908cf290ca2535d6c2f1fb3a1344ece;hb=413f4a5;hp=45ec4b4922e5f629abec8a28f7c87bf0bb66e62e;hpb=40cca7585d969499e92b98c32956bbe3f2050e4e;p=vpp.git diff --git a/src/vpp-api/python/vpp_papi/vpp_transport_socket.py b/src/vpp-api/python/vpp_papi/vpp_transport_socket.py index 45ec4b4922e..4341cad3e90 100644 --- a/src/vpp-api/python/vpp_papi/vpp_transport_socket.py +++ b/src/vpp-api/python/vpp_papi/vpp_transport_socket.py @@ -6,11 +6,20 @@ import struct import threading import select import multiprocessing -import queue +try: + import queue as queue +except ImportError: + import Queue as queue import logging -class VppTransport: +class VppTransportSocketIOError(IOError): + pass + + +class VppTransport(object): + VppTransportSocketIOError = VppTransportSocketIOError + def __init__(self, parent, read_timeout, server_address): self.connected = False self.read_timeout = read_timeout if read_timeout > 0 else 1 @@ -50,13 +59,13 @@ class VppTransport: return # Put either to local queue or if context == 0 # callback queue - r = self.parent.decode_incoming_msg(msg) - if hasattr(r, 'context') and r.context > 0: + if self.parent.has_context(msg): self.q.put(msg) else: self.parent.msg_handler_async(msg) else: - raise IOError(2, 'Unknown response from select') + raise VppTransportSocketIOError( + 2, 'Unknown response from select') def connect(self, name, pfx, msg_handler, rx_qlen): @@ -84,7 +93,7 @@ class VppTransport: msg = self._read() hdr, length = self.parent.header.unpack(msg, 0) if hdr.msgid != 16: - raise IOError('Invalid reply message') + raise VppTransportSocketIOError('Invalid reply message') r, length = sockclnt_create_reply.unpack(msg) self.socket_index = r.index @@ -116,9 +125,9 @@ class VppTransport: pass def callback(self): - raise NotImplemented + raise NotImplementedError - def get_callback(self, async): + def get_callback(self, do_async): return self.callback def get_msg_index(self, name): @@ -133,7 +142,7 @@ class VppTransport: def write(self, buf): """Send a binary-packed message to VPP.""" if not self.connected: - raise IOError(1, 'Not connected') + raise VppTransportSocketIOError(1, 'Not connected') # Send header header = self.header.pack(0, len(buf), 0) @@ -174,7 +183,7 @@ class VppTransport: def read(self): if not self.connected: - raise IOError(1, 'Not connected') + raise VppTransportSocketIOError(1, 'Not connected') try: return self.q.get(True, self.read_timeout) except queue.Empty: