package network.MessageDecoders; import network.Messages.Enums.BoatActionEnum; import network.Messages.HeartBeat; import static network.Utils.ByteConverter.bytesToLong; /** * Decodes {@link network.Messages.HeartBeat} messages. */ public class HeartBeatDecoder { /** * The encoded message. */ private byte[] encodedMessage; /** * The decoded message. */ private HeartBeat message; /** * Constructs a decoder to decode a given message. * @param encodedMessage The message to decode. */ public HeartBeatDecoder(byte[] encodedMessage) { this.encodedMessage = encodedMessage; decode(); } /** * Decodes the contained message. */ private void decode() { message = new HeartBeat(bytesToLong(encodedMessage)); } /** * Returns the decoded message. * @return The decoded message. */ public HeartBeat getMessage() { return message; } }