Beispiel #1
0
    def send_prepare(self):
        self.status = 10
        user_list = self.addrmanager.user_dict.keys()
        user_list.remove(self.UID)
        new_user_list = user_list + [self.UID]
        self.user_m.update_user_list(new_user_list, self.user_m.view_id + 1)

        message = GBMessage()

        message.view_id = self.user_m.view_id + 1
        
        message.user_id = self.UID
        message.action = "prepare"

        user_list = self.addrmanager.user_dict.keys()
        user_list.remove(self.UID)
        new_user_list = user_list + [self.UID]
        str_json = json.dumps(new_user_list)
        print "PREPARE", "new_user_list", new_user_list

        message.message = str_json

        str_message = message.__encode__()

        self.cast_s.sendGB(str_message)
Beispiel #2
0
    def send_prepare(self):
        self.status = 10
        user_list = self.addrmanager.user_dict.keys()
        user_list.remove(self.UID)
        new_user_list = user_list + [self.UID]
        self.user_m.update_user_list(new_user_list, self.user_m.view_id + 1)

        message = GBMessage()

        message.view_id = self.user_m.view_id + 1

        message.user_id = self.UID
        message.action = "prepare"

        user_list = self.addrmanager.user_dict.keys()
        user_list.remove(self.UID)
        new_user_list = user_list + [self.UID]
        str_json = json.dumps(new_user_list)
        print "PREPARE", "new_user_list", new_user_list

        message.message = str_json

        str_message = message.__encode__()

        self.cast_s.sendGB(str_message)
Beispiel #3
0
    def send_fetch_response(self, gb):
        request_user = gb.user_id
        message = GBMessage()
        message.view_id = self.user_m.view_id
        message.action = "fetch_response"
        message.message = self.abcast.logManager.encodedRecord()
        print 'fetch response', message.message

        str_message = message.__encode__()
        self.cast_s.sendGB(str_message, request_user)
Beispiel #4
0
    def send_fetch_response(self, gb):
        request_user = gb.user_id
        message = GBMessage()
        message.view_id = self.user_m.view_id
        message.action = "fetch_response"
        message.message = self.abcast.logManager.encodedRecord()
        print 'fetch response', message.message

        str_message = message.__encode__()
        self.cast_s.sendGB(str_message, request_user)
Beispiel #5
0
    def test_clock(self, s):
        message = GBMessage()

        message.view_id = self.user_m.view_id
        message.user_id = self.UID
        message.action = "clock"
        message.message = s

        str_message = message.__encode__()

        self.cast_s.sendGB(str_message)
Beispiel #6
0
    def test_clock(self, s):
        message = GBMessage()

        message.view_id = self.user_m.view_id
        message.user_id = self.UID
        message.action = "clock"
        message.message = s

        str_message = message.__encode__()

        self.cast_s.sendGB(str_message)
Beispiel #7
0
    def send_kick_message(self, message):
        print 'ERR', 'SEND Kick Message', message
        kick_message = GBMessage()

        kick_message.view_id = self.user_m.view_id
        kick_message.user_id = self.UID
        kick_message.action = "kick"
        kick_message.message = "B" + message

        str_message = kick_message.__encode__()

        self.cast_s.sendGB(str_message)
Beispiel #8
0
    def send_kick_message(self, message):
        print 'ERR', 'SEND Kick Message', message
        kick_message = GBMessage()

        kick_message.view_id = self.user_m.view_id
        kick_message.user_id = self.UID
        kick_message.action = "kick"
        kick_message.message = "B" + message

        str_message = kick_message.__encode__()

        self.cast_s.sendGB(str_message)
Beispiel #9
0
    def send_user_dict_request(self):
        self.status = 1
        user_dict = self.addrmanager.get_dict()
        str_json = json.dumps(user_dict)

        request_message = GBMessage()
        request_message.user_id = self.UID
        request_message.action = "ask for dict"
        request_message.message = str_json
        str_message = request_message.__encode__()
        self.cast_s.sendGB(str_message)

        if (len(self.user_m.temp_user_list.keys()) == 1):
            self.status = 2
Beispiel #10
0
    def send_user_dict_request(self):
        self.status = 1
        user_dict = self.addrmanager.get_dict()
        str_json = json.dumps(user_dict)

        request_message = GBMessage()
        request_message.user_id = self.UID
        request_message.action = "ask for dict"
        request_message.message = str_json
        str_message = request_message.__encode__()
        self.cast_s.sendGB(str_message)

        if (len(self.user_m.temp_user_list.keys()) == 1):
            self.status = 2
Beispiel #11
0
    def send_user_dict(self):
        user_dict = self.addrmanager.get_dict()
        #dumps to json format
        str_json = json.dumps(user_dict)

        dict_message = GBMessage()

        dict_message.view_id = self.user_m.view_id
        dict_message.user_id = self.UID
        dict_message.action = "dict"
        dict_message.message = str_json

        str_message = dict_message.__encode__()

        self.cast_s.sendGB(str_message)
Beispiel #12
0
    def send_user_dict(self):
        user_dict = self.addrmanager.get_dict()
        #dumps to json format
        str_json = json.dumps(user_dict)

        dict_message = GBMessage()

        dict_message.view_id = self.user_m.view_id
        dict_message.user_id = self.UID
        dict_message.action = "dict"
        dict_message.message = str_json

        str_message = dict_message.__encode__()

        self.cast_s.sendGB(str_message)
Beispiel #13
0
    def send_fetch_all_data(self):
        message = GBMessage()
        message.view_id = self.user_m.view_id
        message.user_id = self.UID
        message.action = "fetch_request"
        message.message = "encode"

        str_message = message.__encode__()

        c = self.user_m.fetch_user_list()
        
        other_user = ""
        for user in c:
            if user is not self.UID:
                other_user = user

        self.cast_s.sendGB(str_message, other_user)
Beispiel #14
0
    def send_fetch_all_data(self):
        message = GBMessage()
        message.view_id = self.user_m.view_id
        message.user_id = self.UID
        message.action = "fetch_request"
        message.message = "encode"

        str_message = message.__encode__()

        c = self.user_m.fetch_user_list()

        other_user = ""
        for user in c:
            if user is not self.UID:
                other_user = user

        self.cast_s.sendGB(str_message, other_user)
Beispiel #15
0
    def recv_delete_msg(self, message, src):
        print 'ERR', "RECV delete message from", src, "msg:", message
        trim_message = message[1:]
        if message[0] == "B":
            message = self.ebcast.receiveErrorBroadCast(trim_message)
        if message[0] == "R":
            message = self.ebcast.receiveErrorReply(trim_message)

        if message == None:
            return
        else:
            kick_message = GBMessage()

            kick_message.view_id = self.user_m.view_id
            kick_message.user_id = self.UID
            kick_message.action = "kick"
            kick_message.message = "R" + message

            str_message = kick_message.__encode__()

            self.cast_s.sendGB(str_message, src)
           
        return
        '''
Beispiel #16
0
    def recv_delete_msg(self, message, src):
        print 'ERR', "RECV delete message from", src, "msg:", message
        trim_message = message[1:]
        if message[0] == "B":
            message = self.ebcast.receiveErrorBroadCast(trim_message)
        if message[0] == "R":
            message = self.ebcast.receiveErrorReply(trim_message)

        if message == None:
            return
        else:
            kick_message = GBMessage()

            kick_message.view_id = self.user_m.view_id
            kick_message.user_id = self.UID
            kick_message.action = "kick"
            kick_message.message = "R" + message

            str_message = kick_message.__encode__()

            self.cast_s.sendGB(str_message, src)

        return
        '''