1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.jboss.netty.example.objectecho;
17
18 import java.net.InetSocketAddress;
19 import java.util.concurrent.Executors;
20
21 import org.jboss.netty.bootstrap.ServerBootstrap;
22 import org.jboss.netty.channel.ChannelPipeline;
23 import org.jboss.netty.channel.ChannelPipelineFactory;
24 import org.jboss.netty.channel.Channels;
25 import org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory;
26 import org.jboss.netty.example.echo.EchoServer;
27 import org.jboss.netty.handler.codec.serialization.ObjectDecoder;
28 import org.jboss.netty.handler.codec.serialization.ObjectEncoder;
29
30
31
32
33
34
35
36
37
38 public class ObjectEchoServer {
39
40 public static void main(String[] args) throws Exception {
41
42 ServerBootstrap bootstrap = new ServerBootstrap(
43 new NioServerSocketChannelFactory(
44 Executors.newCachedThreadPool(),
45 Executors.newCachedThreadPool()));
46
47
48 bootstrap.setPipelineFactory(new ChannelPipelineFactory() {
49 public ChannelPipeline getPipeline() throws Exception {
50 return Channels.pipeline(
51 new ObjectEncoder(),
52 new ObjectDecoder(),
53 new ObjectEchoServerHandler());
54 }
55 });
56
57
58 bootstrap.bind(new InetSocketAddress(8080));
59 }
60 }