1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty.example.udt.echo.message;
17
18 import io.netty.channel.ChannelHandler.Sharable;
19 import io.netty.channel.ChannelHandlerContext;
20 import io.netty.channel.ChannelInboundHandlerAdapter;
21 import io.netty.channel.udt.nio.NioUdtProvider;
22
23
24
25
26 @Sharable
27 public class MsgEchoServerHandler extends ChannelInboundHandlerAdapter {
28
29 @Override
30 public void channelActive(final ChannelHandlerContext ctx) {
31 System.err.println("ECHO active " + NioUdtProvider.socketUDT(ctx.channel()).toStringOptions());
32 }
33
34 @Override
35 public void channelRead(ChannelHandlerContext ctx, Object msg) {
36 ctx.write(msg);
37 }
38
39 @Override
40 public void channelReadComplete(ChannelHandlerContext ctx) {
41 ctx.flush();
42 }
43
44 @Override
45 public void exceptionCaught(final ChannelHandlerContext ctx, final Throwable cause) {
46 cause.printStackTrace();
47 ctx.close();
48 }
49 }