diff --git a/lib/tfw/networking/controller_connector.py b/lib/tfw/networking/controller_connector.py new file mode 100644 index 0000000..b539163 --- /dev/null +++ b/lib/tfw/networking/controller_connector.py @@ -0,0 +1,18 @@ +import zmq +from zmq.eventloop import ioloop +from zmq.eventloop.zmqstream import ZMQStream + +from tfw.config import CONTROLLER_PORT +from tfw.util import ZMQConnectorBase + +ioloop.install() + + +class ControllerConnector(ZMQConnectorBase): + def __init__(self, zmq_context=None): + super(ControllerConnector, self).__init__(zmq_context) + self._zmq_rep_socket = self._zmq_context.socket(zmq.REP) + self._zmq_rep_socket.connect('tcp://localhost:{}'.format(CONTROLLER_PORT)) + self._zmq_rep_stream = ZMQStream(self._zmq_rep_socket) + + self.register_callback = self._zmq_rep_stream.on_recv