Search in sources :

Example 1 with WriteEvent

use of com.cinchapi.concourse.server.plugin.data.WriteEvent in project concourse by cinchapi.

the class PluginSerializerTest method testSerializeWriteEvent.

@Test
public void testSerializeWriteEvent() {
    WriteEvent expected = randomWriteEvent();
    ByteBuffer buffer = serializer.serialize(expected);
    WriteEvent actual = serializer.deserialize(buffer);
    Assert.assertEquals(expected, actual);
}
Also used : WriteEvent(com.cinchapi.concourse.server.plugin.data.WriteEvent) ByteBuffer(java.nio.ByteBuffer) Test(org.junit.Test)

Example 2 with WriteEvent

use of com.cinchapi.concourse.server.plugin.data.WriteEvent in project concourse by cinchapi.

the class PluginSerializerTest method testSerializePacket.

@Test
public void testSerializePacket() {
    int count = Random.getScaleCount();
    List<WriteEvent> events = Lists.newArrayList();
    for (int i = 0; i < count; ++i) {
        events.add(randomWriteEvent());
    }
    Packet expected = new Packet(events);
    ByteBuffer buffer = serializer.serialize(expected);
    Packet actual = serializer.deserialize(buffer);
    Assert.assertEquals(expected, actual);
}
Also used : WriteEvent(com.cinchapi.concourse.server.plugin.data.WriteEvent) Packet(com.cinchapi.concourse.server.plugin.Packet) ByteBuffer(java.nio.ByteBuffer) Test(org.junit.Test)

Example 3 with WriteEvent

use of com.cinchapi.concourse.server.plugin.data.WriteEvent in project concourse by cinchapi.

the class PluginSerializerTest method randomWriteEvent.

/**
 * Generate a random {@link WriteEvent} for testing.
 *
 * @return a random WriteEvent
 */
private WriteEvent randomWriteEvent() {
    String key = Random.getSimpleString();
    TObject value = Convert.javaToThrift(Random.getObject());
    long record = Random.getLong();
    WriteEvent.Type type = Time.now() % 2 == 0 ? WriteEvent.Type.ADD : WriteEvent.Type.REMOVE;
    long timestamp = Time.now();
    String environment = Random.getSimpleString();
    return new WriteEvent(key, value, record, timestamp, type, environment);
}
Also used : WriteEvent(com.cinchapi.concourse.server.plugin.data.WriteEvent) ComplexTObject(com.cinchapi.concourse.thrift.ComplexTObject) TObject(com.cinchapi.concourse.thrift.TObject)

Example 4 with WriteEvent

use of com.cinchapi.concourse.server.plugin.data.WriteEvent in project concourse by cinchapi.

the class Packet method deserialize.

@Override
public void deserialize(Buffer buffer) {
    if (events.isEmpty()) {
        while (buffer.hasRemaining()) {
            WriteEvent event = Reflection.newInstance(WriteEvent.class);
            event.deserialize(buffer);
            events.add(event);
        }
    }
}
Also used : WriteEvent(com.cinchapi.concourse.server.plugin.data.WriteEvent)

Aggregations

WriteEvent (com.cinchapi.concourse.server.plugin.data.WriteEvent)4 ByteBuffer (java.nio.ByteBuffer)2 Test (org.junit.Test)2 Packet (com.cinchapi.concourse.server.plugin.Packet)1 ComplexTObject (com.cinchapi.concourse.thrift.ComplexTObject)1 TObject (com.cinchapi.concourse.thrift.TObject)1