1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.jboss.netty.channel;
17
18 import java.util.Map;
19 import java.util.Map.Entry;
20
21 import org.jboss.netty.buffer.ChannelBufferFactory;
22 import org.jboss.netty.buffer.HeapChannelBufferFactory;
23 import org.jboss.netty.channel.socket.SocketChannelConfig;
24 import org.jboss.netty.util.internal.ConversionUtil;
25
26
27
28
29 public class DefaultChannelConfig implements ChannelConfig {
30
31 private volatile ChannelBufferFactory bufferFactory = HeapChannelBufferFactory.getInstance();
32 private volatile int connectTimeoutMillis = 10000;
33
34
35
36
37 public DefaultChannelConfig() {
38 super();
39 }
40
41 public void setOptions(Map<String, Object> options) {
42 for (Entry<String, Object> e: options.entrySet()) {
43 setOption(e.getKey(), e.getValue());
44 }
45 }
46
47 public boolean setOption(String key, Object value) {
48 if (key.equals("pipelineFactory")) {
49 setPipelineFactory((ChannelPipelineFactory) value);
50 } else if (key.equals("connectTimeoutMillis")) {
51 setConnectTimeoutMillis(ConversionUtil.toInt(value));
52 } else if (key.equals("bufferFactory")) {
53 setBufferFactory((ChannelBufferFactory) value);
54 } else {
55 return false;
56 }
57 return true;
58 }
59
60 public int getConnectTimeoutMillis() {
61 return connectTimeoutMillis;
62 }
63
64 public ChannelBufferFactory getBufferFactory() {
65 return bufferFactory;
66 }
67
68 public void setBufferFactory(ChannelBufferFactory bufferFactory) {
69 if (bufferFactory == null) {
70 throw new NullPointerException("bufferFactory");
71 }
72 this.bufferFactory = bufferFactory;
73 }
74
75 public ChannelPipelineFactory getPipelineFactory() {
76 return null;
77 }
78
79 public void setConnectTimeoutMillis(int connectTimeoutMillis) {
80 if (connectTimeoutMillis < 0) {
81 throw new IllegalArgumentException("connectTimeoutMillis: " + connectTimeoutMillis);
82 }
83 this.connectTimeoutMillis = connectTimeoutMillis;
84 }
85
86 public void setPipelineFactory(ChannelPipelineFactory pipelineFactory) {
87
88 }
89 }