
ren.yale.java.event.EventMessageCodec Maven / Gradle / Ivy
package ren.yale.java.event;
import io.vertx.core.buffer.Buffer;
import io.vertx.core.eventbus.MessageCodec;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
/**
* Yale
*
* 2018-01-29 17:08
**/
public class EventMessageCodec implements MessageCodec {
@Override
public void encodeToWire(Buffer buffer, EventMessage eventMessage) {
try {
ByteArrayOutputStream b = new ByteArrayOutputStream();
ObjectOutputStream ob = new ObjectOutputStream(b);
ob.writeObject(eventMessage);
buffer.appendBytes(b.toByteArray());
}catch (Exception e){
}
}
@Override
public EventMessage decodeFromWire(int i, Buffer buffer) {
EventMessage eventMessage = null;
try {
ByteArrayInputStream b = new ByteArrayInputStream(buffer.getBytes());
ObjectInputStream oi = new ObjectInputStream(b);
eventMessage = (EventMessage) oi.readObject();
}catch (Exception e){
}
return eventMessage;
}
@Override
public EventMessage transform(EventMessage eventMessage) {
return eventMessage;
}
@Override
public String name() {
return "EventMessage";
}
@Override
public byte systemCodecID() {
return -1;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy