Example #1
0
 def __init__(self, true_io_worker):
     self.true_io_worker = true_io_worker
     self.client_info = true_io_worker.socket.getsockname()
     self.json_worker = JSONIOWorker(true_io_worker,
                                     on_json_received=self._on_receive)
     self.id2socket = {}
     self.log = logging.getLogger("sockdemux")
Example #2
0
 def __init__(self, create_io_worker):
     super(OVSControllerPatchPanel, self).__init__(create_io_worker)
     # Boot up POX.
     args = str(
         """./pox.py openflow.of_01 --address=127.0.0.1 --port=%d"""
         """         messenger.messenger --tcp_address=127.0.0.1 --tcp_port=%d """
         """         sts_of_forwarder.sts_of_forwarder """ %
         (self.of_port, self.messenger_port)).split()
     self.pox = subprocess.Popen(args,
                                 cwd="./pox/",
                                 preexec_fn=lambda: os.setsid())
     # Establish connection with POX messenger component.
     true_socket = connect_socket_with_backoff(address="127.0.0.1",
                                               port=self.messenger_port)
     self.json_worker = JSONIOWorker(create_io_worker(true_socket))
     # Send the handshake.
     self.json_worker.send({"sts_connection": ""})
     self._initialize_switch()
Example #3
0
 def __init__(self, io_master, socket):
   self.io_master = io_master
   self.io_worker = JSONIOWorker(self.io_master.create_worker_for_socket(socket))