示例#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()`')
示例#2
0
 def open(self, fpath):
     msg = Message()
     msg.data = pack_string(fpath)
     msg.type = MessageType.Open
     msg.schema = 'string:utf-8'
     self.push(msg)