Package io.netty.channel.socket.oio
Class DefaultOioDatagramChannelConfig
- java.lang.Object
-
- io.netty.channel.DefaultChannelConfig
-
- io.netty.channel.socket.DefaultDatagramChannelConfig
-
- io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig
-
- All Implemented Interfaces:
ChannelConfig,DatagramChannelConfig,OioDatagramChannelConfig
final class DefaultOioDatagramChannelConfig extends DefaultDatagramChannelConfig implements OioDatagramChannelConfig
-
-
Field Summary
-
Fields inherited from class io.netty.channel.DefaultChannelConfig
channel
-
-
Constructor Summary
Constructors Constructor Description DefaultOioDatagramChannelConfig(DatagramChannel channel, java.net.DatagramSocket javaSocket)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> TgetOption(ChannelOption<T> option)Return the value of the givenChannelOptionjava.util.Map<ChannelOption<?>,java.lang.Object>getOptions()Return all setChannelOption's.intgetSoTimeout()Returns the maximal time a operation on the underlying socket may block.OioDatagramChannelConfigsetAllocator(ByteBufAllocator allocator)Set theByteBufAllocatorwhich is used for the channel to allocate buffers.OioDatagramChannelConfigsetAutoClose(boolean autoClose)Sets whether theChannelshould be closed automatically and immediately on write failure.OioDatagramChannelConfigsetAutoRead(boolean autoRead)Sets ifChannelHandlerContext.read()will be invoked automatically so that a user application doesn't need to call it at all.OioDatagramChannelConfigsetBroadcast(boolean broadcast)Sets theStandardSocketOptions.SO_BROADCASToption.OioDatagramChannelConfigsetConnectTimeoutMillis(int connectTimeoutMillis)Sets the connect timeout of the channel in milliseconds.OioDatagramChannelConfigsetInterface(java.net.InetAddress interfaceAddress)Sets the address of the network interface used for multicast packets.OioDatagramChannelConfigsetLoopbackModeDisabled(boolean loopbackModeDisabled)Sets theStandardSocketOptions.IP_MULTICAST_LOOPoption.OioDatagramChannelConfigsetMaxMessagesPerRead(int maxMessagesPerRead)OioDatagramChannelConfigsetMessageSizeEstimator(MessageSizeEstimator estimator)Set theMessageSizeEstimatorwhich is used for the channel to detect the size of a message.OioDatagramChannelConfigsetNetworkInterface(java.net.NetworkInterface networkInterface)Sets theStandardSocketOptions.IP_MULTICAST_IFoption.<T> booleansetOption(ChannelOption<T> option, T value)Sets a configuration property with the specified name and value.OioDatagramChannelConfigsetReceiveBufferSize(int receiveBufferSize)Sets theStandardSocketOptions.SO_RCVBUFoption.OioDatagramChannelConfigsetRecvByteBufAllocator(RecvByteBufAllocator allocator)Set theRecvByteBufAllocatorwhich is used for the channel to allocate receive buffers.OioDatagramChannelConfigsetReuseAddress(boolean reuseAddress)Gets theStandardSocketOptions.SO_REUSEADDRoption.OioDatagramChannelConfigsetSendBufferSize(int sendBufferSize)Sets theStandardSocketOptions.SO_SNDBUFoption.OioDatagramChannelConfigsetSoTimeout(int timeout)Sets the maximal time a operation on the underlying socket may block.OioDatagramChannelConfigsetTimeToLive(int ttl)Sets theStandardSocketOptions.IP_MULTICAST_TTLoption.OioDatagramChannelConfigsetTrafficClass(int trafficClass)Sets theStandardSocketOptions.IP_TOSoption.OioDatagramChannelConfigsetWriteBufferHighWaterMark(int writeBufferHighWaterMark)Sets the high water mark of the write buffer.OioDatagramChannelConfigsetWriteBufferLowWaterMark(int writeBufferLowWaterMark)Sets the low water mark of the write buffer.OioDatagramChannelConfigsetWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)Set theWriteBufferWaterMarkwhich is used for setting the high and low water mark of the write buffer.OioDatagramChannelConfigsetWriteSpinCount(int writeSpinCount)Sets the maximum loop count for a write operation untilWritableByteChannel.write(ByteBuffer)returns a non-zero value.-
Methods inherited from class io.netty.channel.socket.DefaultDatagramChannelConfig
getInterface, getNetworkInterface, getReceiveBufferSize, getSendBufferSize, getTimeToLive, getTrafficClass, isBroadcast, isLoopbackModeDisabled, isReuseAddress, javaSocket
-
Methods inherited from class io.netty.channel.DefaultChannelConfig
autoReadCleared, getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptions, validate
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.netty.channel.ChannelConfig
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptions
-
Methods inherited from interface io.netty.channel.socket.DatagramChannelConfig
getInterface, getNetworkInterface, getReceiveBufferSize, getSendBufferSize, getTimeToLive, getTrafficClass, isBroadcast, isLoopbackModeDisabled, isReuseAddress
-
-
-
-
Constructor Detail
-
DefaultOioDatagramChannelConfig
DefaultOioDatagramChannelConfig(DatagramChannel channel, java.net.DatagramSocket javaSocket)
-
-
Method Detail
-
getOptions
public java.util.Map<ChannelOption<?>,java.lang.Object> getOptions()
Description copied from interface:ChannelConfigReturn all setChannelOption's.- Specified by:
getOptionsin interfaceChannelConfig- Overrides:
getOptionsin classDefaultDatagramChannelConfig
-
getOption
public <T> T getOption(ChannelOption<T> option)
Description copied from interface:ChannelConfigReturn the value of the givenChannelOption- Specified by:
getOptionin interfaceChannelConfig- Overrides:
getOptionin classDefaultDatagramChannelConfig
-
setOption
public <T> boolean setOption(ChannelOption<T> option, T value)
Description copied from interface:ChannelConfigSets a configuration property with the specified name and value. To override this method properly, you must call the super class:public boolean setOption(ChannelOption<T> option, T value) { if (super.setOption(option, value)) { return true; } if (option.equals(additionalOption)) { .... return true; } return false; }- Specified by:
setOptionin interfaceChannelConfig- Overrides:
setOptionin classDefaultDatagramChannelConfig- Returns:
trueif and only if the property has been set
-
setSoTimeout
public OioDatagramChannelConfig setSoTimeout(int timeout)
Description copied from interface:OioDatagramChannelConfigSets the maximal time a operation on the underlying socket may block.- Specified by:
setSoTimeoutin interfaceOioDatagramChannelConfig
-
getSoTimeout
public int getSoTimeout()
Description copied from interface:OioDatagramChannelConfigReturns the maximal time a operation on the underlying socket may block.- Specified by:
getSoTimeoutin interfaceOioDatagramChannelConfig
-
setBroadcast
public OioDatagramChannelConfig setBroadcast(boolean broadcast)
Description copied from interface:DatagramChannelConfigSets theStandardSocketOptions.SO_BROADCASToption.- Specified by:
setBroadcastin interfaceDatagramChannelConfig- Specified by:
setBroadcastin interfaceOioDatagramChannelConfig- Overrides:
setBroadcastin classDefaultDatagramChannelConfig
-
setInterface
public OioDatagramChannelConfig setInterface(java.net.InetAddress interfaceAddress)
Description copied from interface:DatagramChannelConfigSets the address of the network interface used for multicast packets.- Specified by:
setInterfacein interfaceDatagramChannelConfig- Specified by:
setInterfacein interfaceOioDatagramChannelConfig- Overrides:
setInterfacein classDefaultDatagramChannelConfig
-
setLoopbackModeDisabled
public OioDatagramChannelConfig setLoopbackModeDisabled(boolean loopbackModeDisabled)
Description copied from interface:DatagramChannelConfigSets theStandardSocketOptions.IP_MULTICAST_LOOPoption.- Specified by:
setLoopbackModeDisabledin interfaceDatagramChannelConfig- Specified by:
setLoopbackModeDisabledin interfaceOioDatagramChannelConfig- Overrides:
setLoopbackModeDisabledin classDefaultDatagramChannelConfig- Parameters:
loopbackModeDisabled-trueif and only if the loopback mode has been disabled
-
setNetworkInterface
public OioDatagramChannelConfig setNetworkInterface(java.net.NetworkInterface networkInterface)
Description copied from interface:DatagramChannelConfigSets theStandardSocketOptions.IP_MULTICAST_IFoption.- Specified by:
setNetworkInterfacein interfaceDatagramChannelConfig- Specified by:
setNetworkInterfacein interfaceOioDatagramChannelConfig- Overrides:
setNetworkInterfacein classDefaultDatagramChannelConfig
-
setReuseAddress
public OioDatagramChannelConfig setReuseAddress(boolean reuseAddress)
Description copied from interface:DatagramChannelConfigGets theStandardSocketOptions.SO_REUSEADDRoption.- Specified by:
setReuseAddressin interfaceDatagramChannelConfig- Specified by:
setReuseAddressin interfaceOioDatagramChannelConfig- Overrides:
setReuseAddressin classDefaultDatagramChannelConfig
-
setReceiveBufferSize
public OioDatagramChannelConfig setReceiveBufferSize(int receiveBufferSize)
Description copied from interface:DatagramChannelConfigSets theStandardSocketOptions.SO_RCVBUFoption.- Specified by:
setReceiveBufferSizein interfaceDatagramChannelConfig- Specified by:
setReceiveBufferSizein interfaceOioDatagramChannelConfig- Overrides:
setReceiveBufferSizein classDefaultDatagramChannelConfig
-
setSendBufferSize
public OioDatagramChannelConfig setSendBufferSize(int sendBufferSize)
Description copied from interface:DatagramChannelConfigSets theStandardSocketOptions.SO_SNDBUFoption.- Specified by:
setSendBufferSizein interfaceDatagramChannelConfig- Specified by:
setSendBufferSizein interfaceOioDatagramChannelConfig- Overrides:
setSendBufferSizein classDefaultDatagramChannelConfig
-
setTimeToLive
public OioDatagramChannelConfig setTimeToLive(int ttl)
Description copied from interface:DatagramChannelConfigSets theStandardSocketOptions.IP_MULTICAST_TTLoption.- Specified by:
setTimeToLivein interfaceDatagramChannelConfig- Specified by:
setTimeToLivein interfaceOioDatagramChannelConfig- Overrides:
setTimeToLivein classDefaultDatagramChannelConfig
-
setTrafficClass
public OioDatagramChannelConfig setTrafficClass(int trafficClass)
Description copied from interface:DatagramChannelConfigSets theStandardSocketOptions.IP_TOSoption.- Specified by:
setTrafficClassin interfaceDatagramChannelConfig- Specified by:
setTrafficClassin interfaceOioDatagramChannelConfig- Overrides:
setTrafficClassin classDefaultDatagramChannelConfig
-
setWriteSpinCount
public OioDatagramChannelConfig setWriteSpinCount(int writeSpinCount)
Description copied from interface:ChannelConfigSets the maximum loop count for a write operation untilWritableByteChannel.write(ByteBuffer)returns a non-zero value. It is similar to what a spin lock is used for in concurrency programming. It improves memory utilization and write throughput depending on the platform that JVM runs on. The default value is16.- Specified by:
setWriteSpinCountin interfaceChannelConfig- Specified by:
setWriteSpinCountin interfaceDatagramChannelConfig- Specified by:
setWriteSpinCountin interfaceOioDatagramChannelConfig- Overrides:
setWriteSpinCountin classDefaultDatagramChannelConfig
-
setConnectTimeoutMillis
public OioDatagramChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
Description copied from interface:ChannelConfigSets the connect timeout of the channel in milliseconds. If theChanneldoes not support connect operation, this property is not used at all, and therefore will be ignored.- Specified by:
setConnectTimeoutMillisin interfaceChannelConfig- Specified by:
setConnectTimeoutMillisin interfaceDatagramChannelConfig- Specified by:
setConnectTimeoutMillisin interfaceOioDatagramChannelConfig- Overrides:
setConnectTimeoutMillisin classDefaultDatagramChannelConfig- Parameters:
connectTimeoutMillis- the connect timeout in milliseconds.0to disable.
-
setMaxMessagesPerRead
public OioDatagramChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
Description copied from class:DefaultChannelConfig- Specified by:
setMaxMessagesPerReadin interfaceChannelConfig- Specified by:
setMaxMessagesPerReadin interfaceDatagramChannelConfig- Specified by:
setMaxMessagesPerReadin interfaceOioDatagramChannelConfig- Overrides:
setMaxMessagesPerReadin classDefaultDatagramChannelConfig
-
setAllocator
public OioDatagramChannelConfig setAllocator(ByteBufAllocator allocator)
Description copied from interface:ChannelConfigSet theByteBufAllocatorwhich is used for the channel to allocate buffers.- Specified by:
setAllocatorin interfaceChannelConfig- Specified by:
setAllocatorin interfaceDatagramChannelConfig- Specified by:
setAllocatorin interfaceOioDatagramChannelConfig- Overrides:
setAllocatorin classDefaultDatagramChannelConfig
-
setRecvByteBufAllocator
public OioDatagramChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Description copied from interface:ChannelConfigSet theRecvByteBufAllocatorwhich is used for the channel to allocate receive buffers.- Specified by:
setRecvByteBufAllocatorin interfaceChannelConfig- Specified by:
setRecvByteBufAllocatorin interfaceDatagramChannelConfig- Specified by:
setRecvByteBufAllocatorin interfaceOioDatagramChannelConfig- Overrides:
setRecvByteBufAllocatorin classDefaultDatagramChannelConfig
-
setAutoRead
public OioDatagramChannelConfig setAutoRead(boolean autoRead)
Description copied from interface:ChannelConfigSets ifChannelHandlerContext.read()will be invoked automatically so that a user application doesn't need to call it at all. The default value istrue.- Specified by:
setAutoReadin interfaceChannelConfig- Specified by:
setAutoReadin interfaceDatagramChannelConfig- Specified by:
setAutoReadin interfaceOioDatagramChannelConfig- Overrides:
setAutoReadin classDefaultDatagramChannelConfig
-
setAutoClose
public OioDatagramChannelConfig setAutoClose(boolean autoClose)
Description copied from interface:ChannelConfigSets whether theChannelshould be closed automatically and immediately on write failure. The default istrue.- Specified by:
setAutoClosein interfaceChannelConfig- Specified by:
setAutoClosein interfaceDatagramChannelConfig- Specified by:
setAutoClosein interfaceOioDatagramChannelConfig- Overrides:
setAutoClosein classDefaultDatagramChannelConfig
-
setWriteBufferHighWaterMark
public OioDatagramChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
Description copied from interface:ChannelConfigSets the high water mark of the write buffer. If the number of bytes queued in the write buffer exceeds this value,
Channel.isWritable()will start to returnfalse.- Specified by:
setWriteBufferHighWaterMarkin interfaceChannelConfig- Specified by:
setWriteBufferHighWaterMarkin interfaceOioDatagramChannelConfig- Overrides:
setWriteBufferHighWaterMarkin classDefaultDatagramChannelConfig
-
setWriteBufferLowWaterMark
public OioDatagramChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
Description copied from interface:ChannelConfigSets the low water mark of the write buffer. Once the number of bytes queued in the write buffer exceeded the high water mark and then dropped down below this value,
Channel.isWritable()will start to returntrueagain.- Specified by:
setWriteBufferLowWaterMarkin interfaceChannelConfig- Specified by:
setWriteBufferLowWaterMarkin interfaceOioDatagramChannelConfig- Overrides:
setWriteBufferLowWaterMarkin classDefaultDatagramChannelConfig
-
setWriteBufferWaterMark
public OioDatagramChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
Description copied from interface:ChannelConfigSet theWriteBufferWaterMarkwhich is used for setting the high and low water mark of the write buffer.- Specified by:
setWriteBufferWaterMarkin interfaceChannelConfig- Specified by:
setWriteBufferWaterMarkin interfaceDatagramChannelConfig- Specified by:
setWriteBufferWaterMarkin interfaceOioDatagramChannelConfig- Overrides:
setWriteBufferWaterMarkin classDefaultDatagramChannelConfig
-
setMessageSizeEstimator
public OioDatagramChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
Description copied from interface:ChannelConfigSet theMessageSizeEstimatorwhich is used for the channel to detect the size of a message.- Specified by:
setMessageSizeEstimatorin interfaceChannelConfig- Specified by:
setMessageSizeEstimatorin interfaceDatagramChannelConfig- Specified by:
setMessageSizeEstimatorin interfaceOioDatagramChannelConfig- Overrides:
setMessageSizeEstimatorin classDefaultDatagramChannelConfig
-
-