3333import io .netty .channel .epoll .EpollIoHandler ;
3434import io .netty .channel .epoll .EpollServerSocketChannel ;
3535
36+ import io .netty .channel .uring .IoUring ;
37+ import io .netty .channel .uring .IoUringIoHandler ;
38+ import io .netty .channel .uring .IoUringServerSocketChannel ;
3639import org .junit .jupiter .api .Test ;
3740import org .junit .jupiter .params .ParameterizedTest ;
3841import org .junit .jupiter .params .provider .MethodSource ;
@@ -58,7 +61,7 @@ public class VirtualMultithreadIoEventLoopGroupTest {
5861
5962 // Transport enumeration to drive tests across available Netty transports.
6063 private enum Transport {
61- NIO , EPOLL , LOCAL ;
64+ NIO , EPOLL , IO_URING , LOCAL ;
6265
6366 boolean isLocal () {
6467 return this == LOCAL ;
@@ -70,6 +73,8 @@ boolean isAvailable() {
7073 return true ;
7174 case EPOLL :
7275 return Epoll .isAvailable ();
76+ case IO_URING :
77+ return IoUring .isAvailable ();
7378 case LOCAL :
7479 return true ;
7580 default :
@@ -83,6 +88,8 @@ IoHandlerFactory handlerFactory() {
8388 return NioIoHandler .newFactory ();
8489 case EPOLL :
8590 return EpollIoHandler .newFactory ();
91+ case IO_URING :
92+ return IoUringIoHandler .newFactory ();
8693 case LOCAL :
8794 return LocalIoHandler .newFactory ();
8895 default :
@@ -96,6 +103,8 @@ Class<? extends io.netty.channel.ServerChannel> serverChannelClass() {
96103 return NioServerSocketChannel .class ;
97104 case EPOLL :
98105 return EpollServerSocketChannel .class ;
106+ case IO_URING :
107+ return IoUringServerSocketChannel .class ;
99108 case LOCAL :
100109 throw new IllegalStateException (
101110 "LOCAL transport does not provide a ServerChannel class for real networking" );
0 commit comments