New file |
| | |
| | | package com.dy.simRtu202404.tcpClient; |
| | | |
| | | import org.apache.logging.log4j.LogManager; |
| | | import org.apache.logging.log4j.Logger; |
| | | import org.apache.mina.core.buffer.IoBuffer; |
| | | import org.apache.mina.core.session.IoSession; |
| | | import org.apache.mina.filter.codec.ProtocolEncoderAdapter; |
| | | import org.apache.mina.filter.codec.ProtocolEncoderOutput; |
| | | |
| | | import java.io.IOException; |
| | | /** |
| | | * @Author: liurunyu |
| | | * @Date: 2025/02/26 11:10 |
| | | * @Description |
| | | */ |
| | | public class LocalEncoder extends ProtocolEncoderAdapter { |
| | | |
| | | private static final Logger log = LogManager.getLogger(LocalEncoder.class) ; |
| | | |
| | | /** |
| | | * 对数据进行编码,以备网络传输 |
| | | */ |
| | | public void encode(IoSession session, Object message, ProtocolEncoderOutput out) throws IOException, Exception{ |
| | | byte[] data = (byte[])message; |
| | | //log.info("上行数据:" + ByteUtil.bytes2Hex(data, true)); |
| | | |
| | | out.write(IoBuffer.allocate((data==null?0:data.length), false).put(data).flip()); |
| | | } |
| | | |
| | | } |