1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 package org.apache.hc.core5.reactor;
28
29 import java.net.InetSocketAddress;
30
31 import org.apache.hc.core5.util.TimeValue;
32 import org.apache.hc.core5.util.Timeout;
33 import org.junit.Assert;
34 import org.junit.Test;
35
36 public class IOReactorConfigTest {
37 @Test
38 public void testCustomIOReactorConfig() throws Exception {
39 final IOReactorConfig reactorConfig = IOReactorConfig.custom()
40 .setSelectInterval(TimeValue.ofMilliseconds(500))
41 .setIoThreadCount(2)
42 .setSoTimeout(Timeout.ofSeconds(10))
43 .setSoReuseAddress(true)
44 .setSoLinger(TimeValue.ofSeconds(30))
45 .setSoKeepAlive(true)
46 .setTcpNoDelay(false)
47 .setTrafficClass(0x02)
48 .setSndBufSize(32767)
49 .setRcvBufSize(8192)
50 .setBacklogSize(5)
51 .setSocksProxyAddress(new InetSocketAddress(8888))
52 .setSocksProxyUsername("socksProxyUsername")
53 .setSocksProxyPassword("socksProxyPassword")
54 .build();
55
56 Assert.assertEquals(TimeValue.ofMilliseconds(500), reactorConfig.getSelectInterval());
57 Assert.assertEquals(2, reactorConfig.getIoThreadCount());
58 Assert.assertEquals(Timeout.ofSeconds(10), reactorConfig.getSoTimeout());
59 Assert.assertEquals(true, reactorConfig.isSoReuseAddress());
60 Assert.assertEquals(TimeValue.ofSeconds(30), reactorConfig.getSoLinger());
61 Assert.assertEquals(true, reactorConfig.isSoKeepalive());
62 Assert.assertEquals(false, reactorConfig.isTcpNoDelay());
63 Assert.assertEquals(0x02, reactorConfig.getTrafficClass());
64 Assert.assertEquals(32767, reactorConfig.getSndBufSize());
65 Assert.assertEquals(8192, reactorConfig.getRcvBufSize());
66 Assert.assertEquals(5, reactorConfig.getBacklogSize());
67 Assert.assertEquals(new InetSocketAddress(8888), reactorConfig.getSocksProxyAddress());
68 Assert.assertEquals("socksProxyUsername", reactorConfig.getSocksProxyUsername());
69 Assert.assertEquals("socksProxyPassword", reactorConfig.getSocksProxyPassword());
70 }
71 }