baseimage-tutorial-framework/lib/tfw/networking/solvable_connector.py
2018-03-15 16:11:53 +01:00

19 lines
669 B
Python

import zmq
from tfw.config import tfwenv
from tfw.networking.zmq_connector_base import ZMQConnectorBase
from tfw.networking.serialization import serialize_all, deserialize_all
class SolvableConnector(ZMQConnectorBase):
def __init__(self, zmq_context=None):
super(SolvableConnector, self).__init__(zmq_context)
self._zmq_req_socket = self._zmq_context.socket(zmq.REQ)
self._zmq_req_socket.bind('tcp://*:{}'.format(tfwenv.CONTROLLER_PORT))
def send(self, key, message):
self._zmq_req_socket.send_multipart(serialize_all(key, message))
def recv(self):
return deserialize_all(*self._zmq_req_socket.recv_multipart())