Java源码示例:org.msgpack.MessagePack

示例1
private Unpacker read_parameters_MessagePack_Init(String name) {
    MessagePack msgpack = new MessagePack();
    File f = new File(name);
    byte[] nbytes = null;

    try {
        FileInputStream fin = new FileInputStream(f);
        nbytes = new byte[(int)f.length()];
        fin.read(nbytes);
        fin.close();

    } catch (Exception e) {
        Log.d("MessagePack_Init:", e.getMessage());
        return null;
    }

    ByteArrayInputStream in = new ByteArrayInputStream(nbytes);
    org.msgpack.unpacker.Unpacker unpack = msgpack.createUnpacker(in);
    return unpack;
}
 
示例2
public static int serializeClusteringInfo(Path path, String urlList,
		Integer port, Configuration conf) throws IOException {
	FileSystem fs = path.getFileSystem(conf);
	if (fs.exists(path)) {
		return 0;
	}
	
	MsgpackClient client = new MsgpackClient(urlList, port, conf.get("com.b5m.msgpack.collection"));
	client.setTimeout(1000);
	Value res = client.read(new Object[0], "getClusteringInfos");
	AdClusteringsInfo response = new org.msgpack.unpacker.Converter(
			new MessagePack(), res).read(AdClusteringsInfo.class);

	DataOutputStream out = fs.create(path);
	response.write(out);
	out.close();
	return 0;
}
 
示例3
public static <T> Writer<T> getMsgpackInstance(final OutputStream out, Map<Class, WriteHandler<?,?>> customHandlers, WriteHandler<?, ?> defaultWriteHandler, Function<Object,Object> transform) throws IOException {

        Packer packer = new MessagePack().createPacker(out);

        final MsgpackEmitter emitter = new MsgpackEmitter(packer, handlerMap(customHandlers), defaultWriteHandler, transform);

        final WriteCache writeCache = new WriteCache(true);

        return new Writer<T>() {
            @Override
            public void write(T o) {
                try {
                    emitter.emit(o, false, writeCache.init());
                    out.flush();
                } catch (Throwable e) {
                    throw new RuntimeException(e);
                }
            }
        };
    }
 
示例4
public byte[] pack(Object obj) {
    try {
        return MessagePack.pack( obj );
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}
 
示例5
public Value unpack(byte[] obj) {
    try {
        return MessagePack.unpack(obj);
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}
 
示例6
@Override
protected void decode(ChannelHandlerContext ctx, ByteBuf msg, List<Object> out) throws Exception {
    final int length = msg.readableBytes();
    final byte[] array = new byte[length];
    msg.getBytes(msg.readerIndex(), array, 0, length);
    out.add(new MessagePack().read(array, Packet.class));
}
 
示例7
public T decode(Packet packet) {
    try {
        return new MessagePack().read(packet.getBody(), getType());
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}
 
示例8
public void sendMessage(Message message) {
    Packet packet = new Packet(message.getCmd(), ClientInfo.getSessionId());
    try {
        packet.setBody(new MessagePack().write(message));
        channel.writeAndFlush(packet);
    } catch (IOException e) {
        e.printStackTrace();
    }
}
 
示例9
public static void main(String[] args) throws IOException {

        TestUser user = new TestUser();
        MessagePack messagePack = new MessagePack();

        //序列化
        byte[] bs = messagePack.write(user);

        //反序列化
        user = messagePack.read(bs, TestUser.class);
    }
 
示例10
@org.junit.Test
    public void test() throws IOException {

        // Create serialize objects.
        List<String> src = new ArrayList<String>();
        src.add("msgpack");
        src.add("kumofs");
        src.add("viver");

        MessagePack msgpack = new MessagePack();
// Serialize
        byte[] raw = msgpack.write(src);

// Deserialize directly using a template
        List<String> dst1 = msgpack.read(raw, Templates.tList(Templates.TString));
        System.out.println(dst1.get(0));
        System.out.println(dst1.get(1));
        System.out.println(dst1.get(2));

// Or, Deserialze to Value then convert type.
        Value dynamic = msgpack.read(raw);
        List<String> dst2 = new Converter(dynamic)
                .read(Templates.tList(Templates.TString));
        System.out.println(dst2.get(0));
        System.out.println(dst2.get(1));
        System.out.println(dst2.get(2));
    }
 
示例11
public Reader readerOf(Object... things) throws IOException {
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    MessagePack msgpack = new MessagePack();
    Packer packer = msgpack.createPacker(out);

    for (Object o : things) {
        packer.write(o);
    }

    InputStream in = new ByteArrayInputStream(out.toByteArray());
    return TransitFactory.reader(TransitFactory.Format.MSGPACK, in);

}
 
示例12
/**
 * Create a client builder for MessagePack values.
 * @return The builder
 */
public static <T> MemcachedClientBuilder<T> newMessagePackClient(final MessagePack messagePack, final Class<T> valueType) {
  if (!ClassUtils.isPrimitiveOrWrapper(valueType)) {
    messagePack.register(valueType);
  }
  return newClient(new MessagePackTranscoder<>(messagePack, valueType));
}
 
示例13
public NettyEventLoop(ExecutorService workerExecutor,
        ExecutorService ioExecutor,
        ScheduledExecutorService scheduledExecutor, MessagePack messagePack) {
    super(workerExecutor, ioExecutor, scheduledExecutor, messagePack);
}
 
示例14
public EventLoop(ExecutorService workerExecutor, ExecutorService ioExecutor,
        ScheduledExecutorService scheduledExecutor, MessagePack messagePack) {
    this.workerExecutor = workerExecutor;
    this.scheduledExecutor = scheduledExecutor;
    this.ioExecutor = ioExecutor;
    this.messagePack = messagePack;
}
 
示例15
@Override
protected void encode(ChannelHandlerContext ctx, Packet packet, ByteBuf out) throws Exception {
    out.writeBytes(new MessagePack().write(packet));
}
 
示例16
@Bean
public MessagePack messagePack() {
    return new MessagePack();
}
 
示例17
public MessagePackHolder(MessagePack messagePack) {
    this.messagePack = messagePack;
}
 
示例18
@Override
protected AbstractParser createParser() {
    MessagePack mp = new MessagePack();
    return new MsgpackParser(mp.createUnpacker(in), handlers, defaultHandler,
            mapBuilder, listBuilder);
}
 
示例19
public MessagePackTranscoder(final MessagePack messagePack, final Type valueType) {
  this.messagePack = Objects.requireNonNull(messagePack, "messagePack must not be null");
  this.valueType = Objects.requireNonNull(valueType, "valueType must not be null");
}
 
示例20
public MessagePackRequestMarshaller() {
  msgPack = new MessagePack();
  msgPackMarshallingStrategy = new MessagePackMarshallingStrategy(msgPack);
}
 
示例21
public EventLoop make(ExecutorService workerExecutor,
        ExecutorService ioExecutor,
        ScheduledExecutorService scheduledExecutor, MessagePack messagePack) {
    return new NettyEventLoop(workerExecutor, ioExecutor,
            scheduledExecutor, messagePack);
}
 
示例22
public MessagePackStreamDecoder(MessagePack msgpack) {
    super();
    this.msgpack = msgpack;
}
 
示例23
StreamPipelineFactory(MessagePack messagePack, RpcMessageHandler handler) {
    this.handler = handler;
    this.messagePack = messagePack;
}
 
示例24
public MessagePackDecoder(MessagePack messagePack) {
    super();
    this.messagePack = messagePack;
}
 
示例25
public MessagePackEncoder(MessagePack messagePack) {
    this(1024, messagePack);
}
 
示例26
public MessagePackEncoder(int estimatedLength, MessagePack messagePack) {
    this.estimatedLength = estimatedLength;
    this.messagePack = messagePack;
}
 
示例27
static public EventLoop start(MessagePack messagePack) {
    return start(Executors.newCachedThreadPool(),
            Executors.newCachedThreadPool(),
            Executors.newScheduledThreadPool(2), messagePack);
}
 
示例28
static public EventLoop start(ExecutorService workerExecutor, ExecutorService ioExecutor) {
    return start(workerExecutor, ioExecutor,
            Executors.newScheduledThreadPool(2), new MessagePack());
}
 
示例29
static public EventLoop start(
        ExecutorService workerExecutor, ExecutorService ioExecutor,
        ScheduledExecutorService scheduledExecutor, MessagePack messagePack) {
    return getFactory().make(workerExecutor, ioExecutor, scheduledExecutor, messagePack);
}
 
示例30
public MessagePack getMessagePack() {
    return messagePack;
}