| | |
| | | |
| | | import com.anyun.exam.lib.MyLog; |
| | | import com.anyun.im_lib.util.ByteUtil; |
| | | import com.safeluck.aykj.utils.BytesUtils; |
| | | |
| | | import safeluck.drive.evaluation.platformMessage.JK2019MessageBase; |
| | | import safeluck.drive.evaluation.platformMessage.PlatFormConstant; |
| | | import safeluck.drive.evaluation.platformMessage.RegisterResp; |
| | | import safeluck.drive.evaluation.platformMessage.ServerCommonRsp; |
| | | import safeluck.drive.evaluation.platformMessage.utils.MessageEscaper; |
| | | import safeluck.drive.evaluation.platformMessage.utils.MessageManager; |
| | | import safeluck.drive.evaluation.util.CThreadPoolExecutor; |
| | | import safeluck.drive.evaluation.util.Utils; |
| | | |
| | |
| | | private static final String TAG = MessageProcessor.class.getSimpleName(); |
| | | |
| | | private MessageProcessor(){ |
| | | |
| | | messageEscaper = new MessageEscaper(); |
| | | messageManager = new MessageManager(); |
| | | } |
| | | |
| | | private static class MessageProcessorInstance{ |
| | | private static final IMessageProcessor INSTANCE = new MessageProcessor(); |
| | | } |
| | | |
| | | MessageEscaper messageEscaper; |
| | | MessageManager messageManager; |
| | | public static IMessageProcessor getInstance(){ |
| | | return MessageProcessorInstance.INSTANCE; |
| | | } |
| | | |
| | | @Override |
| | | public void receiveMsg(byte[] message) { |
| | | byte[] datas = Utils.parseMsg(message); |
| | | Log.i(TAG, "receiveMsg: "+ ByteUtil.byte2HexStr(datas)); |
| | | byte checkcolde=Utils.calCheckCode(ByteUtil.subArray(datas,0,datas.length-1)); |
| | | if (checkcolde == datas[datas.length-1]){ |
| | | Log.i(TAG, "receiveMsg: 消息正确"); |
| | | parseMessage(datas); |
| | | } |
| | | // byte[] datas = Utils.parseMsg(message); |
| | | // Log.i(TAG, "receiveMsg: "+ ByteUtil.byte2HexStr(datas)); |
| | | // byte checkcolde=Utils.calCheckCode(ByteUtil.subArray(datas,0,datas.length-1)); |
| | | // if (checkcolde == datas[datas.length-1]){ |
| | | // Log.i(TAG, "receiveMsg: 消息正确"); |
| | | // parseMessage(datas); |
| | | // } |
| | | |
| | | |
| | | //反转义 |
| | | byte[] datas=messageEscaper.unescape(message); |
| | | MyLog.i(PlatFormConstant.TAG,"转义过后的服务消息:"+ BytesUtils.bytesToHexString(datas)); |
| | | JK2019MessageBase jk2019MessageBase = MessageManager.get(BytesUtils.bytesToHexString(datas)); |
| | | |
| | | } |
| | | |
| | | private void parseMessage(byte[] datas) { |