info.gratour.jt809core.codec.encoder.bodyencoder.exg.MBEncoder_9200_DownExgMsg.scala Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jt-core Show documentation
Show all versions of jt-core Show documentation
`jt-core` is a java/scala communication processing library for JT808/JT809/JT1078 standard.
The newest version!
package info.gratour.jt809core.codec.encoder.bodyencoder.exg
import info.gratour.jt809core.codec.encoder.bodyencoder.VehRelatedMsgBodyEncoder
import info.gratour.jt809core.protocol.msg.JT809VehRelatedMsg
import info.gratour.jt809core.protocol.msg.exg._
import io.netty.buffer.ByteBuf
object MBEncoder_9200_DownExgMsg extends VehRelatedMsgBodyEncoder {
override def encodeSubBody(msg: JT809VehRelatedMsg, out: ByteBuf): Unit = {
msg match {
case m: JT809Msg_9202_DownExgMsgCarLocation =>
out.writeGnssData(m.getGnssData)
case m: JT809Msg_9203_DownExgMsgHistoryAcrossArea =>
out.writeByte(m.getGnssDataList.size())
m.getGnssDataList.forEach(out.writeGnssData(_))
case m: JT809Msg_9204_DownExgMsgCarInfo =>
out.writeStr(m.getCarInfo)
case m: JT809Msg_9205_DownExgMsgReturnStartup =>
out.writeByte(m.getReasonCode)
case m: JT809Msg_9206_DownExgMsgReturnEnd =>
out.writeByte(m.getReasonCode)
case m: JT809Msg_9207_DownExgMsgApplyForMonitorStartupAck =>
out.writeByte(m.getResult)
case m: JT809Msg_9208_DownExgMsgApplyForMonitorEndAck =>
out.writeByte(m.getResult)
case m: JT809Msg_9209_DownExgMsgApplyHisGnssDataAck =>
out.writeByte(m.getResult)
case _: JT809Msg_920A_DownExgMsgReportDriverInfo =>
// nop
case _: JT809Msg_920B_DownExgMsgTakeEWayBillReq =>
// nop
}
}
override def msgId: Int = JT809DownExgMsg.MSG_ID
}