def make_command(command):
"""Create an command from a method signature."""
# pylint: disable=missing-docstring
@wraps(command)
def actualcommand(self, *args, **kwds):
data = command(self, *args, **kwds)
name = command.__name__[3:]
# pylint: disable=protected-access
signal = '{uuid}{sep}{event}'.format(
uuid=self._uuid,
sep=SEPARATOR,
event=name
)
if flask.has_request_context():
emit(signal, {'data': pack(data)})
else:
sio = flask.current_app.extensions['socketio']
sio.emit(signal, {'data': pack(data)})
eventlet.sleep()
return actualcommand
评论列表
文章目录