public final class EpollSocketChannelConfig extends EpollChannelConfig implements SocketChannelConfig
| Modifier and Type | Method and Description |
|---|---|
<T> T |
getOption(ChannelOption<T> option)
Return the value of the given
ChannelOption |
Map<ChannelOption<?>,Object> |
getOptions()
Return all set
ChannelOption's. |
int |
getReceiveBufferSize()
Gets the
StandardSocketOptions.SO_RCVBUF option. |
int |
getSendBufferSize()
Gets the
StandardSocketOptions.SO_SNDBUF option. |
int |
getSoLinger()
Gets the
StandardSocketOptions.SO_LINGER option. |
int |
getTcpKeepCnt()
Get the
TCP_KEEPCNT option on the socket. |
int |
getTcpKeepIdle()
Get the
TCP_KEEPIDLE option on the socket. |
int |
getTcpKeepIntvl()
Get the
TCP_KEEPINTVL option on the socket. |
int |
getTrafficClass()
Gets the
StandardSocketOptions.IP_TOS option. |
boolean |
isAllowHalfClosure()
Returns
true if and only if the channel should not close itself when its remote
peer shuts down output to make the connection half-closed. |
boolean |
isKeepAlive()
Gets the
StandardSocketOptions.SO_KEEPALIVE option. |
boolean |
isReuseAddress()
Gets the
StandardSocketOptions.SO_REUSEADDR option. |
boolean |
isTcpCork()
Get the
TCP_CORK option on the socket. |
boolean |
isTcpNoDelay()
Gets the
StandardSocketOptions.TCP_NODELAY option. |
EpollSocketChannelConfig |
setAllocator(ByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate buffers. |
EpollSocketChannelConfig |
setAllowHalfClosure(boolean allowHalfClosure)
Sets whether the channel should not close itself when its remote peer shuts down output to
make the connection half-closed.
|
EpollSocketChannelConfig |
setAutoRead(boolean autoRead)
Sets if
ChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. |
EpollSocketChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connect timeout of the channel in milliseconds.
|
EpollSocketChannelConfig |
setEpollMode(EpollMode mode)
Set the
EpollMode used. |
EpollSocketChannelConfig |
setKeepAlive(boolean keepAlive)
Sets the
StandardSocketOptions.SO_KEEPALIVE option. |
EpollSocketChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
Sets the maximum number of messages to read per read loop.
|
EpollSocketChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
Set the
ByteBufAllocator which is used for the channel
to detect the size of a message. |
<T> boolean |
setOption(ChannelOption<T> option,
T value)
Sets a configuration property with the specified name and value.
|
EpollSocketChannelConfig |
setPerformancePreferences(int connectionTime,
int latency,
int bandwidth)
Sets the performance preferences as specified in
Socket.setPerformancePreferences(int, int, int). |
EpollSocketChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
Sets the
StandardSocketOptions.SO_RCVBUF option. |
EpollSocketChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate receive buffers. |
EpollSocketChannelConfig |
setReuseAddress(boolean reuseAddress)
Sets the
StandardSocketOptions.SO_REUSEADDR option. |
EpollSocketChannelConfig |
setSendBufferSize(int sendBufferSize)
Sets the
StandardSocketOptions.SO_SNDBUF option. |
EpollSocketChannelConfig |
setSoLinger(int soLinger)
Sets the
StandardSocketOptions.SO_LINGER option. |
EpollSocketChannelConfig |
setTcpCork(boolean tcpCork)
Set the
TCP_CORK option on the socket. |
EpollSocketChannelConfig |
setTcpKeepCntl(int probes)
Set the
TCP_KEEPCNT option on the socket. |
EpollSocketChannelConfig |
setTcpKeepIdle(int seconds)
Set the
TCP_KEEPIDLE option on the socket. |
EpollSocketChannelConfig |
setTcpKeepIntvl(int seconds)
Set the
TCP_KEEPINTVL option on the socket. |
EpollSocketChannelConfig |
setTcpNoDelay(boolean tcpNoDelay)
Sets the
StandardSocketOptions.TCP_NODELAY option. |
EpollSocketChannelConfig |
setTrafficClass(int trafficClass)
Sets the
StandardSocketOptions.IP_TOS option. |
EpollSocketChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
Sets the high water mark of the write buffer.
|
EpollSocketChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
Sets the low water mark of the write buffer.
|
EpollSocketChannelConfig |
setWriteSpinCount(int writeSpinCount)
Sets the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
autoReadCleared, getEpollModegetAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteSpinCount, isAutoRead, setOptions, validateclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteSpinCount, isAutoRead, setOptionspublic Map<ChannelOption<?>,Object> getOptions()
ChannelConfigChannelOption's.getOptions in interface ChannelConfiggetOptions in class EpollChannelConfigpublic <T> T getOption(ChannelOption<T> option)
ChannelConfigChannelOptiongetOption in interface ChannelConfiggetOption in class EpollChannelConfigpublic <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 ChannelConfigsetOption in class EpollChannelConfigtrue if and only if the property has been setpublic int getReceiveBufferSize()
SocketChannelConfigStandardSocketOptions.SO_RCVBUF option.getReceiveBufferSize in interface SocketChannelConfigpublic int getSendBufferSize()
SocketChannelConfigStandardSocketOptions.SO_SNDBUF option.getSendBufferSize in interface SocketChannelConfigpublic int getSoLinger()
SocketChannelConfigStandardSocketOptions.SO_LINGER option.getSoLinger in interface SocketChannelConfigpublic int getTrafficClass()
SocketChannelConfigStandardSocketOptions.IP_TOS option.getTrafficClass in interface SocketChannelConfigpublic boolean isKeepAlive()
SocketChannelConfigStandardSocketOptions.SO_KEEPALIVE option.isKeepAlive in interface SocketChannelConfigpublic boolean isReuseAddress()
SocketChannelConfigStandardSocketOptions.SO_REUSEADDR option.isReuseAddress in interface SocketChannelConfigpublic boolean isTcpNoDelay()
SocketChannelConfigStandardSocketOptions.TCP_NODELAY option. Please note that the default value of this option
is true unlike the operating system default (false). However, for some buggy platforms, such as
Android, that shows erratic behavior with Nagle's algorithm disabled, the default value remains to be
false.isTcpNoDelay in interface SocketChannelConfigpublic boolean isTcpCork()
TCP_CORK option on the socket. See man 7 tcp for more details.public int getTcpKeepIdle()
TCP_KEEPIDLE option on the socket. See man 7 tcp for more details.public int getTcpKeepIntvl()
TCP_KEEPINTVL option on the socket. See man 7 tcp for more details.public int getTcpKeepCnt()
TCP_KEEPCNT option on the socket. See man 7 tcp for more details.public EpollSocketChannelConfig setKeepAlive(boolean keepAlive)
SocketChannelConfigStandardSocketOptions.SO_KEEPALIVE option.setKeepAlive in interface SocketChannelConfigpublic EpollSocketChannelConfig setPerformancePreferences(int connectionTime, int latency, int bandwidth)
SocketChannelConfigSocket.setPerformancePreferences(int, int, int).setPerformancePreferences in interface SocketChannelConfigpublic EpollSocketChannelConfig setReceiveBufferSize(int receiveBufferSize)
SocketChannelConfigStandardSocketOptions.SO_RCVBUF option.setReceiveBufferSize in interface SocketChannelConfigpublic EpollSocketChannelConfig setReuseAddress(boolean reuseAddress)
SocketChannelConfigStandardSocketOptions.SO_REUSEADDR option.setReuseAddress in interface SocketChannelConfigpublic EpollSocketChannelConfig setSendBufferSize(int sendBufferSize)
SocketChannelConfigStandardSocketOptions.SO_SNDBUF option.setSendBufferSize in interface SocketChannelConfigpublic EpollSocketChannelConfig setSoLinger(int soLinger)
SocketChannelConfigStandardSocketOptions.SO_LINGER option.setSoLinger in interface SocketChannelConfigpublic EpollSocketChannelConfig setTcpNoDelay(boolean tcpNoDelay)
SocketChannelConfigStandardSocketOptions.TCP_NODELAY option. Please note that the default value of this option
is true unlike the operating system default (false). However, for some buggy platforms, such as
Android, that shows erratic behavior with Nagle's algorithm disabled, the default value remains to be
false.setTcpNoDelay in interface SocketChannelConfigpublic EpollSocketChannelConfig setTcpCork(boolean tcpCork)
TCP_CORK option on the socket. See man 7 tcp for more details.public EpollSocketChannelConfig setTrafficClass(int trafficClass)
SocketChannelConfigStandardSocketOptions.IP_TOS option.setTrafficClass in interface SocketChannelConfigpublic EpollSocketChannelConfig setTcpKeepIdle(int seconds)
TCP_KEEPIDLE option on the socket. See man 7 tcp for more details.public EpollSocketChannelConfig setTcpKeepIntvl(int seconds)
TCP_KEEPINTVL option on the socket. See man 7 tcp for more details.public EpollSocketChannelConfig setTcpKeepCntl(int probes)
TCP_KEEPCNT option on the socket. See man 7 tcp for more details.public boolean isAllowHalfClosure()
SocketChannelConfigtrue if and only if the channel should not close itself when its remote
peer shuts down output to make the connection half-closed. If false, the connection
is closed automatically when the remote peer shuts down output.isAllowHalfClosure in interface SocketChannelConfigpublic EpollSocketChannelConfig setAllowHalfClosure(boolean allowHalfClosure)
SocketChannelConfigtrue the connection is not closed when the
remote peer shuts down output. Instead,
ChannelHandler.userEventTriggered(ChannelHandlerContext, Object)
is invoked with a ChannelInputShutdownEvent object. If false, the connection
is closed automatically.setAllowHalfClosure in interface SocketChannelConfigpublic EpollSocketChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
ChannelConfigChannel does not support connect operation, this property is not
used at all, and therefore will be ignored.setConnectTimeoutMillis in interface ChannelConfigsetConnectTimeoutMillis in interface SocketChannelConfigsetConnectTimeoutMillis in class EpollChannelConfigconnectTimeoutMillis - the connect timeout in milliseconds.
0 to disable.public EpollSocketChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
ChannelConfigsetMaxMessagesPerRead in interface ChannelConfigsetMaxMessagesPerRead in interface SocketChannelConfigsetMaxMessagesPerRead in class EpollChannelConfigpublic EpollSocketChannelConfig 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 in interface ChannelConfigsetWriteSpinCount in interface SocketChannelConfigsetWriteSpinCount in class EpollChannelConfigpublic EpollSocketChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfigByteBufAllocator which is used for the channel
to allocate buffers.setAllocator in interface ChannelConfigsetAllocator in interface SocketChannelConfigsetAllocator in class EpollChannelConfigpublic EpollSocketChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfigByteBufAllocator which is used for the channel
to allocate receive buffers.setRecvByteBufAllocator in interface ChannelConfigsetRecvByteBufAllocator in interface SocketChannelConfigsetRecvByteBufAllocator in class EpollChannelConfigpublic EpollSocketChannelConfig 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 in interface ChannelConfigsetAutoRead in interface SocketChannelConfigsetAutoRead in class EpollChannelConfigpublic EpollSocketChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfigChannel.isWritable()
will start to return false.setWriteBufferHighWaterMark in interface ChannelConfigsetWriteBufferHighWaterMark in class EpollChannelConfigpublic EpollSocketChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfigChannel.isWritable() will start to return
true again.setWriteBufferLowWaterMark in interface ChannelConfigsetWriteBufferLowWaterMark in class EpollChannelConfigpublic EpollSocketChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfigByteBufAllocator which is used for the channel
to detect the size of a message.setMessageSizeEstimator in interface ChannelConfigsetMessageSizeEstimator in interface SocketChannelConfigsetMessageSizeEstimator in class EpollChannelConfigpublic EpollSocketChannelConfig setEpollMode(EpollMode mode)
EpollChannelConfigEpollMode used. Default is
EpollMode.EDGE_TRIGGERED. If you want to use DefaultChannelConfig.isAutoRead() false or
DefaultChannelConfig.getMaxMessagesPerRead() and have an accurate behaviour you should use
EpollMode.LEVEL_TRIGGERED.
Be aware this config setting can only be adjusted before the channel was registered.setEpollMode in class EpollChannelConfigCopyright © 2008–2015 The Netty Project. All rights reserved.