commonMain.mqtt.packets.mqttv4.MQTT4Pubcomp.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of kmqtt-common-jvm Show documentation
Show all versions of kmqtt-common-jvm Show documentation
Kotlin Multiplatform MQTT client & embeddable and standalone broker
package mqtt.packets.mqttv4
import mqtt.packets.MQTTControlPacketType
import mqtt.packets.MQTTDeserializer
import mqtt.packets.mqtt.MQTTPubcomp
import socket.streams.ByteArrayInputStream
import socket.streams.ByteArrayOutputStream
public class MQTT4Pubcomp(
packetId: UInt
) : MQTTPubcomp(packetId), MQTT4Packet {
override fun toByteArray(): UByteArray {
val outStream = ByteArrayOutputStream()
outStream.write2BytesInt(packetId)
return outStream.wrapWithFixedHeader(MQTTControlPacketType.PUBCOMP, 0)
}
public companion object : MQTTDeserializer {
override fun fromByteArray(flags: Int, data: UByteArray): MQTT4Pubcomp {
MQTT4Pubcomp.checkFlags(flags)
val inStream = ByteArrayInputStream(data)
val packetId = inStream.read2BytesInt()
return MQTT4Pubcomp(packetId)
}
}
}