package org.yzh.jt808.codec; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufUtil; import org.yzh.framework.annotation.Property; import org.yzh.web.config.Charsets; import org.yzh.web.jt808.codec.JT808MessageEncoder; import java.nio.charset.Charset; /** * 逐暗者 * * @author zhihao.ye ([email protected]) */ public class DarkRepulsor extends JT808MessageEncoder { private static final DarkRepulsor darkRepulsor = new DarkRepulsor(Charsets.GBK); public DarkRepulsor(Charset charset) { super(charset); } public static void main(String[] args) { ByteBuf byteBuf = darkRepulsor.encode(CoderTest.cameraShot()); System.out.println(); System.out.println(ByteBufUtil.hexDump(byteBuf)); } @Override public void write(ByteBuf buf, Property prop, Object value) { int before = buf.writerIndex(); super.write(buf, prop, value); int after = buf.writerIndex(); String hex = ByteBufUtil.hexDump(buf, before, after - before); System.out.println(prop.index() + "\t" + hex + "\t" + prop.desc() + "\t" + String.valueOf(value)); } }