Added encode/decode for PubRec message
This commit is contained in:
@@ -30,6 +30,7 @@ public class MQTTDecoder extends ByteToMessageDecoder {
|
||||
m_decoderMap.put(AbstractMessage.PINGRESP, new PingRespDecoder());
|
||||
m_decoderMap.put(AbstractMessage.UNSUBACK, new UnsubAckDecoder());
|
||||
m_decoderMap.put(AbstractMessage.PUBCOMP, new PubCompDecoder());
|
||||
m_decoderMap.put(AbstractMessage.PUBREC, new PubRecDecoder());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -29,6 +29,7 @@ public class MQTTEncoder extends MessageToByteEncoder<AbstractMessage> {
|
||||
m_encoderMap.put(AbstractMessage.PINGRESP, new PingRespEncoder());
|
||||
m_encoderMap.put(AbstractMessage.UNSUBACK, new UnsubAckEncoder());
|
||||
m_encoderMap.put(AbstractMessage.PUBCOMP, new PubCompEncoder());
|
||||
m_encoderMap.put(AbstractMessage.PUBREC, new PubRecEncoder());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
package org.dna.mqtt.moquette.parser.netty;
|
||||
|
||||
import org.dna.mqtt.moquette.proto.messages.MessageIDMessage;
|
||||
import org.dna.mqtt.moquette.proto.messages.PubRecMessage;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author andrea
|
||||
*/
|
||||
class PubRecDecoder extends MessageIDDecoder {
|
||||
|
||||
@Override
|
||||
protected MessageIDMessage createMessage() {
|
||||
return new PubRecMessage();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package org.dna.mqtt.moquette.parser.netty;
|
||||
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import io.netty.channel.ChannelHandlerContext;
|
||||
import org.dna.mqtt.moquette.proto.messages.AbstractMessage;
|
||||
import org.dna.mqtt.moquette.proto.messages.PubRecMessage;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author andrea
|
||||
*/
|
||||
class PubRecEncoder extends DemuxEncoder<PubRecMessage> {
|
||||
|
||||
@Override
|
||||
protected void encode(ChannelHandlerContext chc, PubRecMessage msg, ByteBuf out) {
|
||||
out.writeByte(AbstractMessage.PUBREC << 4);
|
||||
out.writeBytes(Utils.encodeRemainingLength(2));
|
||||
out.writeShort(msg.getMessageID());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user