def message_handler(server_thread): message = server_thread.data try: values = message_to_dict(message) if not len(values) > 0: return # raise TerminateRequestThread join_chatroom_f = partial(utils.handle_join_chat_room, values, server_thread) leave_chatroom_f = partial(utils.handle_leave_chat_room, values, server_thread) disconnect_f = partial(utils.handle_disconnect, values, server_thread) chat_f = partial(utils.handle_chat, values, server_thread) handlers = { "JOIN_CHATROOM": join_chatroom_f, "LEAVE_CHATROOM": leave_chatroom_f, "DISCONNECT": disconnect_f, "CHAT": chat_f } message_type = get_message_dict_type(values) if message_type not in handlers: # Todo: Make more specific return # raise Exception handlers[message_type]() except TerminateRequestThread: raise TerminateRequestThread except Exception, e: logging.exception(e) return
def message_handler(server_thread): message = server_thread.data try: values = message_to_dict(message) if not len(values) > 0: raise TerminateRequestThread print values except TerminateRequestThread: raise TerminateRequestThread except Exception, e: logging.exception(e)