def __call__(self, msg):
        msg = self.update_header(msg)
        msg = self.update_metadata(msg)
        msg = self.update_msg_type(msg)
        header = msg['header']

        handler = getattr(self, header['msg_type'], None)
        if handler is None:
            return msg

        # handle status=error replies separately (no change, at present)
        if msg['content'].get('status', None) in {'error', 'aborted'}:
            return self.handle_reply_status_error(msg)
        return handler(msg)
dataset/ETHPy150Open jupyter/jupyter_client/jupyter_client/adapter.py/Adapter.__call__/original