Search in sources :

Example 1 with ByteBufferOutputStream

use of org.jgroups.util.ByteBufferOutputStream in project JGroups by belaban.

the class ByteBufferOutputStreamTest method testConstruction.

public void testConstruction() throws Exception {
    Address dest = Util.createRandomAddress("A");
    Message msg = new BytesMessage(dest, "hello world").setFlag(Message.Flag.DONT_BUNDLE, Message.Flag.OOB).putHeader((short) 22, NakAckHeader2.createMessageHeader(322649));
    int size = msg.size();
    ByteBuffer buf = ByteBuffer.allocate(size);
    ByteBufferOutputStream out = new ByteBufferOutputStream(buf);
    msg.writeTo(out);
    buf.flip();
    byte[] array = new byte[buf.limit()];
    System.arraycopy(buf.array(), buf.arrayOffset(), array, 0, buf.limit());
    ByteBufferInputStream in = new ByteBufferInputStream(ByteBuffer.wrap(array));
    Message copy = new BytesMessage();
    copy.readFrom(in);
    System.out.println("copy = " + copy);
    assert msg.getDest() != null && msg.getDest().equals(dest);
}
Also used : Address(org.jgroups.Address) BytesMessage(org.jgroups.BytesMessage) Message(org.jgroups.Message) ByteBufferOutputStream(org.jgroups.util.ByteBufferOutputStream) ByteBufferInputStream(org.jgroups.util.ByteBufferInputStream) BytesMessage(org.jgroups.BytesMessage) ByteBuffer(java.nio.ByteBuffer)

Aggregations

ByteBuffer (java.nio.ByteBuffer)1 Address (org.jgroups.Address)1 BytesMessage (org.jgroups.BytesMessage)1 Message (org.jgroups.Message)1 ByteBufferInputStream (org.jgroups.util.ByteBufferInputStream)1 ByteBufferOutputStream (org.jgroups.util.ByteBufferOutputStream)1