package com.dy.simRtu202404.tcpClient; import com.dy.common.util.ByteUtil; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.mina.core.service.IoHandlerAdapter; import org.apache.mina.core.session.IdleStatus; import org.apache.mina.core.session.IoSession; import org.apache.mina.filter.FilterEvent; /** * @Author: liurunyu * @Date: 2025/02/26 11:10 * @Description */ public class TcpHandler extends IoHandlerAdapter { private static Logger log = LogManager.getLogger(TcpHandler.class.getName()) ; /** * {@inheritDoc} */ @Override public void sessionCreated(IoSession session) throws Exception { super.sessionCreated(session); } /** * {@inheritDoc} */ @Override public void sessionOpened(IoSession session) throws Exception { super.sessionOpened(session); } /** * {@inheritDoc} */ @Override public void sessionClosed(IoSession session) throws Exception { super.sessionClosed(session); } /** * {@inheritDoc} */ @Override public void sessionIdle(IoSession session, IdleStatus status) throws Exception { super.sessionIdle(session, status); } /** * {@inheritDoc} */ @Override public void exceptionCaught(IoSession session, Throwable cause) throws Exception { } /** * {@inheritDoc} */ @Override public void messageReceived(IoSession session, Object message) throws Exception { if(message != null){ byte[] bs = (byte[])message ; log.info("收到中间件数据:" + ByteUtil.bytes2Hex(bs, true)); } } /** * {@inheritDoc} */ @Override public void messageSent(IoSession session, Object message) throws Exception { if(message != null){ byte[] bs = (byte[])message ; log.info("\n网络发送了数据," + (session==null?"":(session.getRemoteAddress() != null?("中间件网址是:" + session.getRemoteAddress().toString()):"")) + ("\n数据:" + ByteUtil.bytes2Hex(bs, true))); } } /** * {@inheritDoc} */ @Override public void inputClosed(IoSession session) throws Exception { session.closeNow(); } /** * {@inheritDoc} */ @Override public void event(IoSession session, FilterEvent event) throws Exception { } }