add PingHandler
This commit is contained in:
@@ -14,12 +14,14 @@ import static mc.server.network.impl.NettyConstants.ATTR_STATE;
|
||||
public class HandshakeHandler extends AbstractPacketHandler<HandshakePacket> {
|
||||
|
||||
private final Provider<StatusHandler> statusHandlerProvider;
|
||||
private final Provider<PingHandler> pingHandlerProvider;
|
||||
|
||||
@Override
|
||||
protected void channelRead1(ChannelHandlerContext ctx, HandshakePacket packet) {
|
||||
log.info("{}", packet);
|
||||
|
||||
ctx.channel().attr(ATTR_STATE).set(packet.getNextState());
|
||||
ctx.pipeline().replace("handshake_handler", "status_handler", statusHandlerProvider.get());
|
||||
ctx.channel().pipeline().replace("handshake_handler", "status_handler", statusHandlerProvider.get());
|
||||
ctx.channel().pipeline().addAfter("status_handler", "ping_handler", pingHandlerProvider.get());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
package mc.server.network.impl.handler;
|
||||
|
||||
import io.netty.channel.ChannelHandlerContext;
|
||||
import mc.protocol.status.PingPacket;
|
||||
|
||||
public class PingHandler extends AbstractPacketHandler<PingPacket> {
|
||||
|
||||
@Override
|
||||
protected void channelRead1(ChannelHandlerContext ctx, PingPacket packet) {
|
||||
ctx.writeAndFlush(packet).channel().disconnect();
|
||||
}
|
||||
}
|
||||
@@ -5,14 +5,11 @@ import io.netty.channel.ChannelHandlerContext;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import mc.protocol.ProtocolConstant;
|
||||
import mc.protocol.State;
|
||||
import mc.protocol.dto.ServerInfo;
|
||||
import mc.protocol.status.client.StatusServerRequest;
|
||||
import mc.protocol.status.server.StatusServerResponse;
|
||||
import mc.protocol.text.Text;
|
||||
|
||||
import static mc.server.network.impl.NettyConstants.ATTR_STATE;
|
||||
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor(onConstructor = @__({ @Inject }))
|
||||
public class StatusHandler extends AbstractPacketHandler<StatusServerRequest> {
|
||||
@@ -32,7 +29,6 @@ public class StatusHandler extends AbstractPacketHandler<StatusServerRequest> {
|
||||
StatusServerResponse response = new StatusServerResponse();
|
||||
response.setServerInfoDto(serverInfo);
|
||||
|
||||
ctx.channel().writeAndFlush(response)/*.channel().disconnect()*/;
|
||||
ctx.channel().attr(ATTR_STATE).set(State.PLAY); //TODO просто что бы был UnknownPacket
|
||||
ctx.channel().writeAndFlush(response);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user