Ejemplo n.º 1
0
class Protocol:
    def __init__(self, recv_queue, send_queue, total_workers):
        self.connection = Connection()

        self.pending_connections = total_workers

        self.receiver = self.connection.create_direct_receiver(recv_queue)
        self.sender = self.connection.create_direct_sender(send_queue)

    def start_connection(self, callback):
        self.callback = callback
        self.receiver.start_receiving(self.data_read)

    def data_read(self, msg_type, msg):
        if msg_type == EOF:
            #self.receiver.close()
            self.pending_connections -= 1

            if self.pending_connections == 0:
                self.receiver.close()
        else:
            self.callback(json.loads(msg))

    def send_data(self, top_cities):
        self.sender.send(TOP_CITIES, json.dumps(top_cities))
        self.sender.send(EOF, '')
class Protocol:
    def __init__(self, recv_queue):
        self.connection = Connection()

        self.expected = 3
        self.actual = 0

        self.receiver = self.connection.create_direct_receiver(recv_queue)

    def start_connection(self, callback_top, callback_date, callback_count):
        self.callback_top = callback_top
        self.callback_date = callback_date
        self.callback_count = callback_count

        self.receiver.start_receiving(self.data_read)

    def data_read(self, msg_type, msg):
        if msg_type == EOF:
            self.actual += 1

            if self.actual == self.expected:
                self.connection.close()
        elif msg_type == TOP_CITIES:
            self.callback_top(json.loads(msg))
        elif msg_type == DATE_RESULTS:
            self.callback_date(json.loads(msg))
        elif msg_type == TOTAL_COUNT:
            self.callback_count(float(msg))
Ejemplo n.º 3
0
class Protocol:
    def __init__(self, recv_queue, send_queue, total_workers):
        self.connection = Connection()

        self.total_workers = total_workers

        self.receiver = self.connection.create_direct_receiver(recv_queue)
        self.sender = self.connection.create_distributed_work_sender(
            send_queue)

    def start_connection(self):  #, callback):
        #self.callback = callback

        self.receiver.start_receiving(self.data_read)

    #def send_data(self, data):
    #    self.sender.send(NORMAL, data)

    def data_read(self, msg_type, msg):
        self.receiver.close()
        self.send_eof()
        self.connection.close()
        '''if msg_type == "EOF":
            self.receiver.close()
            self.send_eof()
            self.connection.close()
        else:            
            self.callback(msg)'''

    def send_eof(self):
        for i in range(0, self.total_workers):
            self.sender.send(EOF, '')
Ejemplo n.º 4
0
class Protocol:
    def __init__(self, recv_queue, send_queue):
        self.connection = Connection()
        self.receiver = self.connection.create_direct_receiver(recv_queue)
        self.sender = self.connection.create_direct_sender(send_queue)

    def start_connection(self, callback):
        self.callback = callback
        self.receiver.start_receiving(self.data_read)

    def data_read(self, msg_type, msg):
        if msg_type == EOF:
            self.receiver.close()
        else:
            [positivi, deceduti] = msg.split(',')
            self.callback(int(positivi), int(deceduti))

    def send_data(self, percentage):
        self.sender.send(TOTAL_COUNT, str(percentage))
        self.sender.send(EOF, '')
class Protocol:
    def __init__(self, recv_queue, send_queue, total_workers):
        self.connection = Connection()

        self.pending_connections = total_workers
        self.receiver = self.connection.create_direct_receiver(recv_queue)
        self.sender = self.connection.create_direct_sender(send_queue)

        self.send_queue = send_queue

    def start_connection(self):
        self.receiver.start_receiving(self.data_read)

    def data_read(self, msg_type, msg):
        if msg_type == EOF:
            self.pending_connections -= 1

            if self.pending_connections == 0:
                self.receiver.close()
                self.sender.send(EOF, '')
                self.connection.close()
class Protocol:
    def __init__(self, recv_queue, send_queue, master_queue):
        self.connection = Connection()
        self.receiver = self.connection.create_direct_receiver(recv_queue)
        self.sender = self.connection.create_direct_sender(send_queue)
        self.master_sender = self.connection.create_direct_sender(master_queue)

    def start_connection(self, callback):
        self.callback = callback
        self.receiver.start_receiving(self.data_read)

    def send_data(self, data):
        self.sender.send(NORMAL, json.dumps(data))

        self.sender.send(EOF, "")
        #self.master_sender.send(EOF, "")

    def data_read(self, msg_type, msg):
        if msg_type == EOF:
            self.receiver.close()
        else:
            self.callback(msg)