Class IOUringTransport
java.lang.Object
io.helidon.webserver.transport.netty.iouring.IOUringTransport
- All Implemented Interfaces:
Transport
A
Transport
implementation based upon Netty's iouring-based native transport.
This Transport
implementation is currently experimental
and its API and implementation are subject to change.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<T> Optional<T>
createTransportArtifact
(Class<T> artifactType, String artifactName, ServerConfiguration config) Returns an artifact corresponding to the supplied artifact coordinates, if one is available.boolean
isAvailableFor
(WebServer webServer) Returnstrue
whenIOUring.isAvailable()
returnstrue
andfalse
otherwise.
-
Constructor Details
-
IOUringTransport
public IOUringTransport()
-
-
Method Details
-
isAvailableFor
Returnstrue
whenIOUring.isAvailable()
returnstrue
andfalse
otherwise.- Specified by:
isAvailableFor
in interfaceTransport
- Parameters:
webServer
- theWebServer
implementation in a deliberately undefined state and currently being constructed- Returns:
true
whenIOUring.isAvailable()
returnstrue
;false
otherwise
-
createTransportArtifact
public <T> Optional<T> createTransportArtifact(Class<T> artifactType, String artifactName, ServerConfiguration config) Returns an artifact corresponding to the supplied artifact coordinates, if one is available.Specifically, this method will return a non-empty
Optional
only if one of the following conditions is true:artifactType
is a subtype ofEventLoopGroup
andartifactName
is exactly equal to eitherbossGroup
orworkerGroup
artifactType
is a subtype ofChannelFactory
andartifactName
is exactly equal toserverChannelFactory
- Specified by:
createTransportArtifact
in interfaceTransport
- Type Parameters:
T
- the type of the transport artifact- Parameters:
artifactType
- aClass
indicating the kind of artifact to be returned; must not benull
; may usefully only be a subtype of eitherEventLoopGroup
orChannelFactory<? extends ServerChannel>
artifactName
- aString
indicating which of possibly several artifacts of the same kind to be returned; must not benull
config
- theServerConfiguration
in effect; must not benull
- Returns:
- an
Optional
, which may be empty but which will never benull
- Throws:
NullPointerException
- if any argument isnull
- See Also:
-
IOUring
IOUringEventLoopGroup
IOUringServerSocketChannel
-