1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty.testsuite.svm;
17
18 import io.netty.bootstrap.Bootstrap;
19 import io.netty.buffer.PooledByteBufAllocator;
20 import io.netty.channel.Channel;
21 import io.netty.channel.ChannelOption;
22 import io.netty.channel.EventLoopGroup;
23 import io.netty.handler.codec.http.HttpClientCodec;
24
25 public class HttpNativeClient {
26
27 private final int port;
28
29 private final EventLoopGroup group;
30
31 private final Class<? extends Channel> channelType;
32
33 public HttpNativeClient(int port, EventLoopGroup group, Class<? extends Channel> channelType) {
34 this.port = port;
35 this.group = group;
36 this.channelType = channelType;
37 }
38
39 public Channel initClient() throws InterruptedException {
40 Channel clientChannel = new Bootstrap()
41 .group(group)
42 .channel(channelType)
43 .handler(new HttpClientCodec())
44 .connect("localhost", port)
45 .sync().channel();
46 return clientChannel;
47 }
48 }