public class DefaultDatagramChannelConfig extends DefaultChannelConfig implements DatagramChannelConfig
DatagramChannelConfig
implementation.channel
Constructor and Description |
---|
DefaultDatagramChannelConfig(DatagramChannel channel,
java.net.DatagramSocket javaSocket)
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
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) |
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)
Sets the maximum number of messages to read per read loop.
|
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
ByteBufAllocator 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 |
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, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptions, validate
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptions
public DefaultDatagramChannelConfig(DatagramChannel channel, java.net.DatagramSocket javaSocket)
protected final java.net.DatagramSocket javaSocket()
public java.util.Map<ChannelOption<?>,java.lang.Object> getOptions()
ChannelConfig
ChannelOption
's.getOptions
in interface ChannelConfig
getOptions
in class DefaultChannelConfig
public <T> T getOption(ChannelOption<T> option)
ChannelConfig
ChannelOption
getOption
in interface ChannelConfig
getOption
in class DefaultChannelConfig
public <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
in interface ChannelConfig
setOption
in class DefaultChannelConfig
true
if and only if the property has been setpublic boolean isBroadcast()
DatagramChannelConfig
StandardSocketOptions.SO_BROADCAST
option.isBroadcast
in interface DatagramChannelConfig
public DatagramChannelConfig setBroadcast(boolean broadcast)
DatagramChannelConfig
StandardSocketOptions.SO_BROADCAST
option.setBroadcast
in interface DatagramChannelConfig
public java.net.InetAddress getInterface()
DatagramChannelConfig
getInterface
in interface DatagramChannelConfig
public DatagramChannelConfig setInterface(java.net.InetAddress interfaceAddress)
DatagramChannelConfig
setInterface
in interface DatagramChannelConfig
public boolean isLoopbackModeDisabled()
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_LOOP
option.isLoopbackModeDisabled
in interface DatagramChannelConfig
true
if and only if the loopback mode has been disabledpublic DatagramChannelConfig setLoopbackModeDisabled(boolean loopbackModeDisabled)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_LOOP
option.setLoopbackModeDisabled
in interface DatagramChannelConfig
loopbackModeDisabled
- true
if and only if the loopback mode has been disabledpublic java.net.NetworkInterface getNetworkInterface()
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_IF
option.getNetworkInterface
in interface DatagramChannelConfig
public DatagramChannelConfig setNetworkInterface(java.net.NetworkInterface networkInterface)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_IF
option.setNetworkInterface
in interface DatagramChannelConfig
public boolean isReuseAddress()
DatagramChannelConfig
StandardSocketOptions.SO_REUSEADDR
option.isReuseAddress
in interface DatagramChannelConfig
public DatagramChannelConfig setReuseAddress(boolean reuseAddress)
DatagramChannelConfig
StandardSocketOptions.SO_REUSEADDR
option.setReuseAddress
in interface DatagramChannelConfig
public int getReceiveBufferSize()
DatagramChannelConfig
StandardSocketOptions.SO_RCVBUF
option.getReceiveBufferSize
in interface DatagramChannelConfig
public DatagramChannelConfig setReceiveBufferSize(int receiveBufferSize)
DatagramChannelConfig
StandardSocketOptions.SO_RCVBUF
option.setReceiveBufferSize
in interface DatagramChannelConfig
public int getSendBufferSize()
DatagramChannelConfig
StandardSocketOptions.SO_SNDBUF
option.getSendBufferSize
in interface DatagramChannelConfig
public DatagramChannelConfig setSendBufferSize(int sendBufferSize)
DatagramChannelConfig
StandardSocketOptions.SO_SNDBUF
option.setSendBufferSize
in interface DatagramChannelConfig
public int getTimeToLive()
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_TTL
option.getTimeToLive
in interface DatagramChannelConfig
public DatagramChannelConfig setTimeToLive(int ttl)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_TTL
option.setTimeToLive
in interface DatagramChannelConfig
public int getTrafficClass()
DatagramChannelConfig
StandardSocketOptions.IP_TOS
option.getTrafficClass
in interface DatagramChannelConfig
public DatagramChannelConfig setTrafficClass(int trafficClass)
DatagramChannelConfig
StandardSocketOptions.IP_TOS
option.setTrafficClass
in interface DatagramChannelConfig
public DatagramChannelConfig setWriteSpinCount(int writeSpinCount)
ChannelConfig
WritableByteChannel.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
in interface ChannelConfig
setWriteSpinCount
in interface DatagramChannelConfig
setWriteSpinCount
in class DefaultChannelConfig
public DatagramChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
ChannelConfig
Channel
does not support connect operation, this property is not
used at all, and therefore will be ignored.setConnectTimeoutMillis
in interface ChannelConfig
setConnectTimeoutMillis
in interface DatagramChannelConfig
setConnectTimeoutMillis
in class DefaultChannelConfig
connectTimeoutMillis
- the connect timeout in milliseconds.
0
to disable.public DatagramChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
ChannelConfig
setMaxMessagesPerRead
in interface ChannelConfig
setMaxMessagesPerRead
in interface DatagramChannelConfig
setMaxMessagesPerRead
in class DefaultChannelConfig
public DatagramChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate buffers.setAllocator
in interface ChannelConfig
setAllocator
in interface DatagramChannelConfig
setAllocator
in class DefaultChannelConfig
public DatagramChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate receive buffers.setRecvByteBufAllocator
in interface ChannelConfig
setRecvByteBufAllocator
in interface DatagramChannelConfig
setRecvByteBufAllocator
in class DefaultChannelConfig
public DatagramChannelConfig setAutoRead(boolean autoRead)
ChannelConfig
ChannelHandlerContext.read()
will be invoked automatically so that a user application doesn't
need to call it at all. The default value is true
.setAutoRead
in interface ChannelConfig
setAutoRead
in interface DatagramChannelConfig
setAutoRead
in class DefaultChannelConfig
public DatagramChannelConfig setAutoClose(boolean autoClose)
setAutoClose
in interface ChannelConfig
setAutoClose
in interface DatagramChannelConfig
setAutoClose
in class DefaultChannelConfig
public DatagramChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
Channel.isWritable()
will start to return false
.setWriteBufferHighWaterMark
in interface ChannelConfig
setWriteBufferHighWaterMark
in class DefaultChannelConfig
public DatagramChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
Channel.isWritable()
will start to return
true
again.setWriteBufferLowWaterMark
in interface ChannelConfig
setWriteBufferLowWaterMark
in class DefaultChannelConfig
public DatagramChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig
MessageSizeEstimator
which is used for the channel
to detect the size of a message.setMessageSizeEstimator
in interface ChannelConfig
setMessageSizeEstimator
in interface DatagramChannelConfig
setMessageSizeEstimator
in class DefaultChannelConfig
Copyright © 2008–2018 The Netty Project. All rights reserved.