示例#1
0
def format_message(*args):
    if len(args) == 1:
        if isinstance(args[0], str):
            msg = Message()
            msg.endpoint = args[0]
            return msg
        elif isinstance(args[0], Message):
            return args[0]
    elif len(args) == 2:
        if isinstance(args[0], Message):
            msg = args[0]
        else:
            msg = Message()
            endpoint = args[0]
            msg.endpoint = endpoint
        json = args[1]
        msg.schema = 'capnp:json'
        msg.data = pack(json)
        return msg
    raise ValueError('Invalid arguments to `format_message()`')