public class DefaultDatagramChannelConfig extends DefaultChannelConfig implements DatagramChannelConfig
DatagramChannelConfig implementation.channel| 构造器和说明 |
|---|
DefaultDatagramChannelConfig(DatagramChannel channel,
java.net.DatagramSocket javaSocket)
Creates a new instance.
|
| 限定符和类型 | 方法和说明 |
|---|---|
java.net.InetAddress |
getInterface()
Gets the address of the network interface used for multicast packets.
|
java.net.NetworkInterface |
getNetworkInterface()
Gets the
StandardSocketOptions.IP_MULTICAST_IF option. |
<T> T |
getOption(ChannelOption<T> option)
Return the value of the given
ChannelOption |
java.util.Map<ChannelOption<?>,java.lang.Object> |
getOptions()
Return all set
ChannelOption's. |
int |
getReceiveBufferSize()
Gets the
StandardSocketOptions.SO_RCVBUF option. |
int |
getSendBufferSize()
Gets the
StandardSocketOptions.SO_SNDBUF option. |
int |
getTimeToLive()
Gets the
StandardSocketOptions.IP_MULTICAST_TTL option. |
int |
getTrafficClass()
Gets the
StandardSocketOptions.IP_TOS option. |
boolean |
isBroadcast()
Gets the
StandardSocketOptions.SO_BROADCAST option. |
boolean |
isLoopbackModeDisabled()
Gets the
StandardSocketOptions.IP_MULTICAST_LOOP option. |
boolean |
isReuseAddress()
Gets the
StandardSocketOptions.SO_REUSEADDR option. |
protected java.net.DatagramSocket |
javaSocket() |
DatagramChannelConfig |
setAllocator(ByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate buffers. |
DatagramChannelConfig |
setAutoClose(boolean autoClose)
Sets whether the
Channel should be closed automatically and immediately on write failure. |
DatagramChannelConfig |
setAutoRead(boolean autoRead)
Sets if
ChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. |
DatagramChannelConfig |
setBroadcast(boolean broadcast)
Sets the
StandardSocketOptions.SO_BROADCAST option. |
DatagramChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connect timeout of the channel in milliseconds.
|
DatagramChannelConfig |
setInterface(java.net.InetAddress interfaceAddress)
Sets the address of the network interface used for multicast packets.
|
DatagramChannelConfig |
setLoopbackModeDisabled(boolean loopbackModeDisabled)
Sets the
StandardSocketOptions.IP_MULTICAST_LOOP option. |
DatagramChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
已过时。
|
DatagramChannelConfig |
setMaxMessagesPerWrite(int maxMessagesPerWrite)
Set the maximum number of message to write per eventloop run.
|
DatagramChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
Set the
MessageSizeEstimator which is used for the channel
to detect the size of a message. |
DatagramChannelConfig |
setNetworkInterface(java.net.NetworkInterface networkInterface)
Sets the
StandardSocketOptions.IP_MULTICAST_IF option. |
<T> boolean |
setOption(ChannelOption<T> option,
T value)
Sets a configuration property with the specified name and value.
|
DatagramChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
Sets the
StandardSocketOptions.SO_RCVBUF option. |
DatagramChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Set the
RecvByteBufAllocator which is used for the channel to allocate receive buffers. |
DatagramChannelConfig |
setReuseAddress(boolean reuseAddress)
Gets the
StandardSocketOptions.SO_REUSEADDR option. |
DatagramChannelConfig |
setSendBufferSize(int sendBufferSize)
Sets the
StandardSocketOptions.SO_SNDBUF option. |
DatagramChannelConfig |
setTimeToLive(int ttl)
Sets the
StandardSocketOptions.IP_MULTICAST_TTL option. |
DatagramChannelConfig |
setTrafficClass(int trafficClass)
Sets the
StandardSocketOptions.IP_TOS option. |
DatagramChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
Sets the high water mark of the write buffer.
|
DatagramChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
Sets the low water mark of the write buffer.
|
DatagramChannelConfig |
setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
Set the
WriteBufferWaterMark which is used for setting the high and low
water mark of the write buffer. |
DatagramChannelConfig |
setWriteSpinCount(int writeSpinCount)
Sets the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
autoReadCleared, getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMaxMessagesPerWrite, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptions, validatepublic DefaultDatagramChannelConfig(DatagramChannel channel, java.net.DatagramSocket javaSocket)
protected final java.net.DatagramSocket javaSocket()
public java.util.Map<ChannelOption<?>,java.lang.Object> getOptions()
ChannelConfigChannelOption's.getOptions 在接口中 ChannelConfiggetOptions 在类中 DefaultChannelConfigpublic <T> T getOption(ChannelOption<T> option)
ChannelConfigChannelOptiongetOption 在接口中 ChannelConfiggetOption 在类中 DefaultChannelConfigpublic <T> boolean setOption(ChannelOption<T> option, T value)
ChannelConfig
public boolean setOption(ChannelOption<T> option, T value) {
if (super.setOption(option, value)) {
return true;
}
if (option.equals(additionalOption)) {
....
return true;
}
return false;
}
setOption 在接口中 ChannelConfigsetOption 在类中 DefaultChannelConfigtrue if and only if the property has been setpublic boolean isBroadcast()
DatagramChannelConfigStandardSocketOptions.SO_BROADCAST option.isBroadcast 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setBroadcast(boolean broadcast)
DatagramChannelConfigStandardSocketOptions.SO_BROADCAST option.setBroadcast 在接口中 DatagramChannelConfigpublic java.net.InetAddress getInterface()
DatagramChannelConfiggetInterface 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setInterface(java.net.InetAddress interfaceAddress)
DatagramChannelConfigsetInterface 在接口中 DatagramChannelConfigpublic boolean isLoopbackModeDisabled()
DatagramChannelConfigStandardSocketOptions.IP_MULTICAST_LOOP option.isLoopbackModeDisabled 在接口中 DatagramChannelConfigtrue if and only if the loopback mode has been disabledpublic DatagramChannelConfig setLoopbackModeDisabled(boolean loopbackModeDisabled)
DatagramChannelConfigStandardSocketOptions.IP_MULTICAST_LOOP option.setLoopbackModeDisabled 在接口中 DatagramChannelConfigloopbackModeDisabled - true if and only if the loopback mode has been disabledpublic java.net.NetworkInterface getNetworkInterface()
DatagramChannelConfigStandardSocketOptions.IP_MULTICAST_IF option.getNetworkInterface 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setNetworkInterface(java.net.NetworkInterface networkInterface)
DatagramChannelConfigStandardSocketOptions.IP_MULTICAST_IF option.setNetworkInterface 在接口中 DatagramChannelConfigpublic boolean isReuseAddress()
DatagramChannelConfigStandardSocketOptions.SO_REUSEADDR option.isReuseAddress 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setReuseAddress(boolean reuseAddress)
DatagramChannelConfigStandardSocketOptions.SO_REUSEADDR option.setReuseAddress 在接口中 DatagramChannelConfigpublic int getReceiveBufferSize()
DatagramChannelConfigStandardSocketOptions.SO_RCVBUF option.getReceiveBufferSize 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setReceiveBufferSize(int receiveBufferSize)
DatagramChannelConfigStandardSocketOptions.SO_RCVBUF option.setReceiveBufferSize 在接口中 DatagramChannelConfigpublic int getSendBufferSize()
DatagramChannelConfigStandardSocketOptions.SO_SNDBUF option.getSendBufferSize 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setSendBufferSize(int sendBufferSize)
DatagramChannelConfigStandardSocketOptions.SO_SNDBUF option.setSendBufferSize 在接口中 DatagramChannelConfigpublic int getTimeToLive()
DatagramChannelConfigStandardSocketOptions.IP_MULTICAST_TTL option.getTimeToLive 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setTimeToLive(int ttl)
DatagramChannelConfigStandardSocketOptions.IP_MULTICAST_TTL option.setTimeToLive 在接口中 DatagramChannelConfigpublic int getTrafficClass()
DatagramChannelConfigStandardSocketOptions.IP_TOS option.getTrafficClass 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setTrafficClass(int trafficClass)
DatagramChannelConfigStandardSocketOptions.IP_TOS option.setTrafficClass 在接口中 DatagramChannelConfigpublic DatagramChannelConfig setWriteSpinCount(int writeSpinCount)
ChannelConfigWritableByteChannel.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 is 16.setWriteSpinCount 在接口中 ChannelConfigsetWriteSpinCount 在接口中 DatagramChannelConfigsetWriteSpinCount 在类中 DefaultChannelConfigpublic DatagramChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
ChannelConfigChannel does not support connect operation, this property is not
used at all, and therefore will be ignored.setConnectTimeoutMillis 在接口中 ChannelConfigsetConnectTimeoutMillis 在接口中 DatagramChannelConfigsetConnectTimeoutMillis 在类中 DefaultChannelConfigconnectTimeoutMillis - the connect timeout in milliseconds.
0 to disable.@Deprecated public DatagramChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
DefaultChannelConfigsetMaxMessagesPerRead 在接口中 ChannelConfigsetMaxMessagesPerRead 在接口中 DatagramChannelConfigsetMaxMessagesPerRead 在类中 DefaultChannelConfigpublic DatagramChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfigByteBufAllocator which is used for the channel
to allocate buffers.setAllocator 在接口中 ChannelConfigsetAllocator 在接口中 DatagramChannelConfigsetAllocator 在类中 DefaultChannelConfigpublic DatagramChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfigRecvByteBufAllocator which is used for the channel to allocate receive buffers.setRecvByteBufAllocator 在接口中 ChannelConfigsetRecvByteBufAllocator 在接口中 DatagramChannelConfigsetRecvByteBufAllocator 在类中 DefaultChannelConfigpublic DatagramChannelConfig setAutoRead(boolean autoRead)
ChannelConfigChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. The default value is true.setAutoRead 在接口中 ChannelConfigsetAutoRead 在接口中 DatagramChannelConfigsetAutoRead 在类中 DefaultChannelConfigpublic DatagramChannelConfig setAutoClose(boolean autoClose)
ChannelConfigChannel should be closed automatically and immediately on write failure.
The default is true.setAutoClose 在接口中 ChannelConfigsetAutoClose 在接口中 DatagramChannelConfigsetAutoClose 在类中 DefaultChannelConfigpublic DatagramChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
Sets 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 return false.
public DatagramChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
Sets 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 return
true again.
public DatagramChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
ChannelConfigWriteBufferWaterMark which is used for setting the high and low
water mark of the write buffer.setWriteBufferWaterMark 在接口中 ChannelConfigsetWriteBufferWaterMark 在接口中 DatagramChannelConfigsetWriteBufferWaterMark 在类中 DefaultChannelConfigpublic DatagramChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfigMessageSizeEstimator which is used for the channel
to detect the size of a message.setMessageSizeEstimator 在接口中 ChannelConfigsetMessageSizeEstimator 在接口中 DatagramChannelConfigsetMessageSizeEstimator 在类中 DefaultChannelConfigpublic DatagramChannelConfig setMaxMessagesPerWrite(int maxMessagesPerWrite)
DefaultChannelConfig