def _execute(self, transforms, *args, **kwargs):
        try:
            extra = kwargs['extra']
            proto_name = kwargs['protocol']
            proto_init = kwargs['protocol_init']
            session_id = kwargs['session_id']

            logging.debug('Incoming session %s(%s) Session ID: %s Extra: %s' % (
                proto_name,
                proto_init,
                session_id,
                extra
                ))

            # If protocol is disabled, raise HTTPError
            if proto_name not in self.settings['enabled_protocols']:
                raise HTTPError(403, 'Forbidden')

            protocol = PROTOCOLS.get(proto_name, None)

            if protocol:
                handler = protocol(self, session_id)
                handler._execute(transforms, *extra, **kwargs)
            else:
                raise Exception('Handler for protocol "%s" is not available' %
                                proto_name)
        except __HOLE__:
            # TODO: Debugging
            raise HTTPError(403, 'Forbidden')
dataset/ETHPy150Open mrjoes/tornadio/tornadio/router.py/SocketRouterBase._execute