示例#1
0
文件: router.py 项目: Leon-zsl/pisces
class Router(object):
    def __init__(self):
        self.processor = Processor()

    def __del__(self):
        self.close()
        
    def close(self):
        self.processor.close()

    def dispatch(self, request_handler):
        # start = time.time()
        db().open_session()
        db_rcd().open_session()
        try:
            token = self.parse_token(request_handler.request)
            msg_list = self.parse_msg(request_handler.request)
            val_list = self.handle_msg(token, msg_list, 
                                       request_handler)
            response = self.parse_response(val_list)
            return response
        except PiscesException, ex:
            db_rcd().rollback()
            db().rollback()
            log_root().exception('uncaught pisces except: ' + ex.msg)
        finally: