Search in sources :

Example 6 with NioMessage

use of org.jgroups.NioMessage in project JGroups by belaban.

the class NioMessageTest method testSetObjectWithArray.

public void testSetObjectWithArray() {
    String s1 = "Bela Ban";
    Message m1 = new NioMessage(null).setObject(s1);
    Assert.assertEquals(0, m1.getOffset());
    Assert.assertEquals(m1.getArray().length, m1.getLength());
    String s2 = m1.getObject();
    Assert.assertEquals(s2, s1);
}
Also used : Message(org.jgroups.Message) NioMessage(org.jgroups.NioMessage) NioMessage(org.jgroups.NioMessage)

Example 7 with NioMessage

use of org.jgroups.NioMessage in project JGroups by belaban.

the class NioMessageTest method testSetObject3Direct.

public void testSetObject3Direct() throws Exception {
    NioMessage msg = new NioMessage(null).useDirectMemory(true).setObject("hello world").useDirectMemory(false);
    _testSize(msg);
    byte[] buf = marshal(msg);
    ByteBuffer tmp = ByteBuffer.wrap(buf);
    Message msg2 = unmarshal(NioMessage.class, tmp);
    String s = msg2.getObject();
    assert Objects.equals(s, "hello world");
}
Also used : Message(org.jgroups.Message) NioMessage(org.jgroups.NioMessage) NioMessage(org.jgroups.NioMessage) ByteBuffer(java.nio.ByteBuffer)

Example 8 with NioMessage

use of org.jgroups.NioMessage in project JGroups by belaban.

the class NioMessageTest method testSetObject.

public void testSetObject() throws Exception {
    Person person = new Person(53, "Bela");
    Message msg = new NioMessage(null).setObject(person);
    _testSize(msg);
    byte[] buf = marshal(msg);
    Message msg2 = unmarshal(NioMessage.class, buf);
    Person p = msg2.getObject();
    assert p != null && p.name.equals("Bela") && p.age == 53;
}
Also used : Message(org.jgroups.Message) NioMessage(org.jgroups.NioMessage) NioMessage(org.jgroups.NioMessage)

Example 9 with NioMessage

use of org.jgroups.NioMessage in project JGroups by belaban.

the class NioMessageTest method testSetObjectDirect.

public void testSetObjectDirect() throws Exception {
    Person person = new Person(53, "Bela");
    NioMessage msg = new NioMessage(null).useDirectMemory(true).setObject(person).useDirectMemory(false);
    _testSize(msg);
    byte[] buf = marshal(msg);
    ByteBuffer tmp = ByteBuffer.wrap(buf);
    Message msg2 = unmarshal(NioMessage.class, tmp);
    Person p = msg2.getObject();
    assert p != null && p.name.equals("Bela") && p.age == 53;
}
Also used : Message(org.jgroups.Message) NioMessage(org.jgroups.NioMessage) NioMessage(org.jgroups.NioMessage) ByteBuffer(java.nio.ByteBuffer)

Example 10 with NioMessage

use of org.jgroups.NioMessage in project JGroups by belaban.

the class NioMessageTest method testUseDirectMemory.

public void testUseDirectMemory() {
    NioMessage msg = new NioMessage(null).useDirectMemory(true);
    assert !msg.hasArray();
    assert !msg.isDirect();
    msg.setArray(ARRAY, 6, 5);
    assert msg.isDirect();
    assert !msg.hasArray();
    assert msg.getLength() == 5 && msg.getOffset() == 0;
    String s = new String(msg.getArray(), msg.getOffset(), msg.getLength());
    assert s.equals("world");
}
Also used : NioMessage(org.jgroups.NioMessage)

Aggregations

NioMessage (org.jgroups.NioMessage)16 Message (org.jgroups.Message)14 ByteBuffer (java.nio.ByteBuffer)4