package iamrescue.communication.messages.codec;
import iamrescue.communication.messages.ExampleMessage;
import iamrescue.communication.messages.MessagePrefixes;
import rescuecore2.standard.entities.StandardPropertyURN;
import rescuecore2.worldmodel.Property;
public class ExampleMessageCodec extends AbstractMessageCodec<ExampleMessage> {
@Override
protected ExampleMessage decodeMessage(BitStreamDecoder decoder) {
int dummyInt = decoder.readNumber();
short dummyShort = (short) decoder.readNumber();
Property buriedness = decoder.readProperty(null,
StandardPropertyURN.BURIEDNESS.toString());
boolean dummyBoolean = decoder.readBoolean();
ExampleMessage exampleMessage = new ExampleMessage(dummyInt,
dummyShort, buriedness, dummyBoolean);
return exampleMessage;
}
@Override
protected void encodeMessage(ExampleMessage message,
BitStreamEncoder encoder) {
encoder.appendNumber(message.getDummyInt());
encoder.appendNumber(message.getDummyShort());
encoder.appendProperty(null, message.getBuriedness());
encoder.appendBoolean(message.isDummyBoolean());
}
@Override
public byte getMessagePrefix() {
return MessagePrefixes.EXAMPLE;
}
}