1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty.channel.uring;
17
18 import io.netty.channel.Channel;
19 import io.netty.channel.socket.ServerSocketChannel;
20 import io.netty.channel.socket.SocketChannel;
21 import io.netty.channel.socket.SocketChannelConfig;
22
23 import java.net.InetSocketAddress;
24 import java.net.SocketAddress;
25
26 public final class IoUringSocketChannel extends AbstractIoUringStreamChannel implements SocketChannel {
27 private final IOUringSocketChannelConfig config;
28
29 public IoUringSocketChannel() {
30 super(null, LinuxSocket.newSocketStream(), false);
31 this.config = new IOUringSocketChannelConfig(this);
32 }
33
34 IoUringSocketChannel(Channel parent, LinuxSocket fd, SocketAddress remote) {
35 super(parent, fd, remote);
36 this.config = new IOUringSocketChannelConfig(this);
37 }
38
39 @Override
40 public ServerSocketChannel parent() {
41 return (ServerSocketChannel) super.parent();
42 }
43
44 @Override
45 public SocketChannelConfig config() {
46 return config;
47 }
48
49 @Override
50 public InetSocketAddress remoteAddress() {
51 return (InetSocketAddress) super.remoteAddress();
52 }
53
54 @Override
55 public InetSocketAddress localAddress() {
56 return (InetSocketAddress) super.localAddress();
57 }
58 }