Archived
0

уменьшена скорость отдачи KeepAlive

This commit is contained in:
2021-05-09 16:59:20 +03:00
parent c6669af651
commit f10fb46d23
2 changed files with 27 additions and 1 deletions

View File

@@ -3,14 +3,20 @@ package mc.protocol;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.SimpleChannelInboundHandler;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import mc.protocol.packets.ClientSidePacket;
import mc.protocol.event.EventBus;
import mc.protocol.pool.PacketPool;
import org.apache.commons.pool2.ObjectPool;
import java.io.IOException;
@Slf4j
@RequiredArgsConstructor
public class PacketInboundHandler extends SimpleChannelInboundHandler<ClientSidePacket> {
private static final String CLIENT_FORCE_DISCONNECTED_IOEXCEPTION_MESSAGE_RU = "Программа на вашем хост-компьютере разорвала установленное подключение";
private final ObjectPool<NettyConnectionContext> poolNettyConnectionContext;
private final PacketPool poolPackets;
private final EventBus eventBus;
@@ -25,4 +31,16 @@ public class PacketInboundHandler extends SimpleChannelInboundHandler<ClientSide
poolNettyConnectionContext.returnObject(context);
poolPackets.returnObject(packet);
}
@Override
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) {
if (cause instanceof IOException && cause.getLocalizedMessage().equalsIgnoreCase(CLIENT_FORCE_DISCONNECTED_IOEXCEPTION_MESSAGE_RU)) {
log.warn("Client '{}' force disconnected", ctx.channel().remoteAddress());
if (log.isTraceEnabled()) {
log.trace("", cause);
}
} else {
log.error("{}", cause.getMessage(), cause);
}
}
}