io.lightflame.tcp.TcpHandler Maven / Gradle / Ivy
The newest version!
package io.lightflame.tcp;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import io.netty.channel.ChannelFutureListener;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.SimpleChannelInboundHandler;
import io.netty.util.CharsetUtil;
/**
* TcpHandler
*/
public class TcpHandler extends SimpleChannelInboundHandler{
@Override
public void channelReadComplete(ChannelHandlerContext ctx) throws Exception {
ctx.writeAndFlush(Unpooled.EMPTY_BUFFER)
.addListener(ChannelFutureListener.CLOSE);
}
@Override
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {
cause.printStackTrace();
ctx.close();
}
@Override
protected void channelRead0(ChannelHandlerContext ctx, ByteBuf msg) throws Exception {
ByteBuf inBuffer = msg;
String received = inBuffer.toString(CharsetUtil.UTF_8);
System.out.println("Server received: " + received);
ctx.write(Unpooled.copiedBuffer("Hello " + received, CharsetUtil.UTF_8));
}
}