Package io.netty.incubator.channel.uring
Class IOUringDatagramChannel
- java.lang.Object
-
- io.netty.util.DefaultAttributeMap
-
- io.netty.channel.AbstractChannel
-
- io.netty.incubator.channel.uring.AbstractIOUringChannel
-
- io.netty.incubator.channel.uring.IOUringDatagramChannel
-
- All Implemented Interfaces:
io.netty.channel.Channel,io.netty.channel.ChannelOutboundInvoker,io.netty.channel.socket.DatagramChannel,io.netty.channel.unix.UnixChannel,io.netty.util.AttributeMap,java.lang.Comparable<io.netty.channel.Channel>
public final class IOUringDatagramChannel extends AbstractIOUringChannel implements io.netty.channel.socket.DatagramChannel
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classIOUringDatagramChannel.IOUringDatagramChannelUnsafe-
Nested classes/interfaces inherited from class io.netty.incubator.channel.uring.AbstractIOUringChannel
AbstractIOUringChannel.AbstractUringUnsafe
-
-
Field Summary
Fields Modifier and Type Field Description private IOUringDatagramChannelConfigconfigprivate booleanconnectedprivate static java.lang.StringEXPECTED_TYPESprivate static io.netty.channel.ChannelMetadataMETADATA-
Fields inherited from class io.netty.incubator.channel.uring.AbstractIOUringChannel
active, socket
-
-
Constructor Summary
Constructors Modifier Constructor Description IOUringDatagramChannel()Create a new instance which selects theInternetProtocolFamilyto use depending on the Operation Systems default which will be chosen.IOUringDatagramChannel(int fd)Create a new instance which selects theInternetProtocolFamilyto use depending on the Operation Systems default which will be chosen.IOUringDatagramChannel(io.netty.channel.socket.InternetProtocolFamily family)Create a new instance using the givenInternetProtocolFamily.privateIOUringDatagramChannel(LinuxSocket fd, boolean active)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description io.netty.channel.ChannelFutureblock(java.net.InetAddress multicastAddress, java.net.InetAddress sourceToBlock)io.netty.channel.ChannelFutureblock(java.net.InetAddress multicastAddress, java.net.InetAddress sourceToBlock, io.netty.channel.ChannelPromise promise)io.netty.channel.ChannelFutureblock(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress sourceToBlock)io.netty.channel.ChannelFutureblock(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress sourceToBlock, io.netty.channel.ChannelPromise promise)private static voidcheckUnresolved(io.netty.channel.AddressedEnvelope<?,?> envelope)IOUringDatagramChannelConfigconfig()protected voiddoBind(java.net.SocketAddress localAddress)protected voiddoClose()protected voiddoDisconnect()protected java.lang.ObjectfilterOutboundMessage(java.lang.Object msg)booleanisActive()booleanisConnected()static booleanisSegmentedDatagramPacketSupported()Returnstrueif the usage ofSegmentedDatagramPacketis supported.io.netty.channel.ChannelFuturejoinGroup(java.net.InetAddress multicastAddress)io.netty.channel.ChannelFuturejoinGroup(java.net.InetAddress multicastAddress, io.netty.channel.ChannelPromise promise)io.netty.channel.ChannelFuturejoinGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source)io.netty.channel.ChannelFuturejoinGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source, io.netty.channel.ChannelPromise promise)io.netty.channel.ChannelFuturejoinGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface)io.netty.channel.ChannelFuturejoinGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface, io.netty.channel.ChannelPromise promise)io.netty.channel.ChannelFutureleaveGroup(java.net.InetAddress multicastAddress)io.netty.channel.ChannelFutureleaveGroup(java.net.InetAddress multicastAddress, io.netty.channel.ChannelPromise promise)io.netty.channel.ChannelFutureleaveGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source)io.netty.channel.ChannelFutureleaveGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source, io.netty.channel.ChannelPromise promise)io.netty.channel.ChannelFutureleaveGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface)io.netty.channel.ChannelFutureleaveGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface, io.netty.channel.ChannelPromise promise)java.net.InetSocketAddresslocalAddress()io.netty.channel.ChannelMetadatametadata()protected AbstractIOUringChannel.AbstractUringUnsafenewUnsafe()java.net.InetSocketAddressremoteAddress()private static java.io.IOExceptiontranslateForConnected(io.netty.channel.unix.Errors.NativeIoException e)-
Methods inherited from class io.netty.incubator.channel.uring.AbstractIOUringChannel
checkResolvable, clearPollFlag, doBeginRead, doDeregister, doRegister, doWrite, fd, ioScheduled, ioUringUnsafe, isCompatible, isOpen, localAddress0, newDirectBuffer, newDirectBuffer, remoteAddress0, resetCachedAddresses, schedulePollRdHup, submissionQueue
-
Methods inherited from class io.netty.channel.AbstractChannel
alloc, bind, bind, bytesBeforeUnwritable, bytesBeforeWritable, close, close, closeFuture, compareTo, connect, connect, connect, connect, deregister, deregister, disconnect, disconnect, doShutdownOutput, equals, eventLoop, flush, hashCode, id, invalidateLocalAddress, invalidateRemoteAddress, isRegistered, isWritable, maxMessagesPerWrite, newChannelPipeline, newFailedFuture, newId, newProgressivePromise, newPromise, newSucceededFuture, parent, pipeline, read, toString, unsafe, validateFileRegion, voidPromise, write, write, writeAndFlush, writeAndFlush
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.netty.channel.Channel
alloc, bytesBeforeUnwritable, bytesBeforeWritable, closeFuture, eventLoop, flush, id, isOpen, isRegistered, isWritable, parent, pipeline, read, unsafe
-
Methods inherited from interface io.netty.channel.ChannelOutboundInvoker
bind, bind, close, close, connect, connect, connect, connect, deregister, deregister, disconnect, disconnect, newFailedFuture, newProgressivePromise, newPromise, newSucceededFuture, voidPromise, write, write, writeAndFlush, writeAndFlush
-
-
-
-
Field Detail
-
METADATA
private static final io.netty.channel.ChannelMetadata METADATA
-
EXPECTED_TYPES
private static final java.lang.String EXPECTED_TYPES
-
config
private final IOUringDatagramChannelConfig config
-
connected
private volatile boolean connected
-
-
Constructor Detail
-
IOUringDatagramChannel
public IOUringDatagramChannel()
Create a new instance which selects theInternetProtocolFamilyto use depending on the Operation Systems default which will be chosen.
-
IOUringDatagramChannel
public IOUringDatagramChannel(io.netty.channel.socket.InternetProtocolFamily family)
Create a new instance using the givenInternetProtocolFamily. Ifnullis used it will depend on the Operation Systems default which will be chosen.
-
IOUringDatagramChannel
public IOUringDatagramChannel(int fd)
Create a new instance which selects theInternetProtocolFamilyto use depending on the Operation Systems default which will be chosen.
-
IOUringDatagramChannel
private IOUringDatagramChannel(LinuxSocket fd, boolean active)
-
-
Method Detail
-
remoteAddress
public java.net.InetSocketAddress remoteAddress()
- Specified by:
remoteAddressin interfaceio.netty.channel.Channel- Specified by:
remoteAddressin interfaceio.netty.channel.socket.DatagramChannel- Overrides:
remoteAddressin classio.netty.channel.AbstractChannel
-
localAddress
public java.net.InetSocketAddress localAddress()
- Specified by:
localAddressin interfaceio.netty.channel.Channel- Specified by:
localAddressin interfaceio.netty.channel.socket.DatagramChannel- Overrides:
localAddressin classio.netty.channel.AbstractChannel
-
metadata
public io.netty.channel.ChannelMetadata metadata()
- Specified by:
metadatain interfaceio.netty.channel.Channel- Overrides:
metadatain classAbstractIOUringChannel
-
isActive
public boolean isActive()
- Specified by:
isActivein interfaceio.netty.channel.Channel- Overrides:
isActivein classAbstractIOUringChannel
-
isConnected
public boolean isConnected()
- Specified by:
isConnectedin interfaceio.netty.channel.socket.DatagramChannel
-
joinGroup
public io.netty.channel.ChannelFuture joinGroup(java.net.InetAddress multicastAddress)
- Specified by:
joinGroupin interfaceio.netty.channel.socket.DatagramChannel
-
joinGroup
public io.netty.channel.ChannelFuture joinGroup(java.net.InetAddress multicastAddress, io.netty.channel.ChannelPromise promise)- Specified by:
joinGroupin interfaceio.netty.channel.socket.DatagramChannel
-
joinGroup
public io.netty.channel.ChannelFuture joinGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface)- Specified by:
joinGroupin interfaceio.netty.channel.socket.DatagramChannel
-
joinGroup
public io.netty.channel.ChannelFuture joinGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface, io.netty.channel.ChannelPromise promise)- Specified by:
joinGroupin interfaceio.netty.channel.socket.DatagramChannel
-
joinGroup
public io.netty.channel.ChannelFuture joinGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source)- Specified by:
joinGroupin interfaceio.netty.channel.socket.DatagramChannel
-
joinGroup
public io.netty.channel.ChannelFuture joinGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source, io.netty.channel.ChannelPromise promise)- Specified by:
joinGroupin interfaceio.netty.channel.socket.DatagramChannel
-
leaveGroup
public io.netty.channel.ChannelFuture leaveGroup(java.net.InetAddress multicastAddress)
- Specified by:
leaveGroupin interfaceio.netty.channel.socket.DatagramChannel
-
leaveGroup
public io.netty.channel.ChannelFuture leaveGroup(java.net.InetAddress multicastAddress, io.netty.channel.ChannelPromise promise)- Specified by:
leaveGroupin interfaceio.netty.channel.socket.DatagramChannel
-
leaveGroup
public io.netty.channel.ChannelFuture leaveGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface)- Specified by:
leaveGroupin interfaceio.netty.channel.socket.DatagramChannel
-
leaveGroup
public io.netty.channel.ChannelFuture leaveGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface, io.netty.channel.ChannelPromise promise)- Specified by:
leaveGroupin interfaceio.netty.channel.socket.DatagramChannel
-
leaveGroup
public io.netty.channel.ChannelFuture leaveGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source)- Specified by:
leaveGroupin interfaceio.netty.channel.socket.DatagramChannel
-
leaveGroup
public io.netty.channel.ChannelFuture leaveGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source, io.netty.channel.ChannelPromise promise)- Specified by:
leaveGroupin interfaceio.netty.channel.socket.DatagramChannel
-
block
public io.netty.channel.ChannelFuture block(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress sourceToBlock)- Specified by:
blockin interfaceio.netty.channel.socket.DatagramChannel
-
block
public io.netty.channel.ChannelFuture block(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress sourceToBlock, io.netty.channel.ChannelPromise promise)- Specified by:
blockin interfaceio.netty.channel.socket.DatagramChannel
-
block
public io.netty.channel.ChannelFuture block(java.net.InetAddress multicastAddress, java.net.InetAddress sourceToBlock)- Specified by:
blockin interfaceio.netty.channel.socket.DatagramChannel
-
block
public io.netty.channel.ChannelFuture block(java.net.InetAddress multicastAddress, java.net.InetAddress sourceToBlock, io.netty.channel.ChannelPromise promise)- Specified by:
blockin interfaceio.netty.channel.socket.DatagramChannel
-
newUnsafe
protected AbstractIOUringChannel.AbstractUringUnsafe newUnsafe()
- Specified by:
newUnsafein classAbstractIOUringChannel
-
doBind
protected void doBind(java.net.SocketAddress localAddress) throws java.lang.Exception- Overrides:
doBindin classAbstractIOUringChannel- Throws:
java.lang.Exception
-
checkUnresolved
private static void checkUnresolved(io.netty.channel.AddressedEnvelope<?,?> envelope)
-
filterOutboundMessage
protected java.lang.Object filterOutboundMessage(java.lang.Object msg)
- Overrides:
filterOutboundMessagein classAbstractIOUringChannel
-
config
public IOUringDatagramChannelConfig config()
- Specified by:
configin interfaceio.netty.channel.Channel- Specified by:
configin interfaceio.netty.channel.socket.DatagramChannel
-
doDisconnect
protected void doDisconnect() throws java.lang.Exception- Overrides:
doDisconnectin classAbstractIOUringChannel- Throws:
java.lang.Exception
-
doClose
protected void doClose() throws java.lang.Exception- Overrides:
doClosein classAbstractIOUringChannel- Throws:
java.lang.Exception
-
translateForConnected
private static java.io.IOException translateForConnected(io.netty.channel.unix.Errors.NativeIoException e)
-
isSegmentedDatagramPacketSupported
public static boolean isSegmentedDatagramPacketSupported()
Returnstrueif the usage ofSegmentedDatagramPacketis supported.- Returns:
trueif supported,falseotherwise.
-
-