public class DefaultOioSocketChannelConfig extends DefaultSocketChannelConfig implements OioSocketChannelConfig
OioSocketChannelConfig
implementationjavaSocket
channel
Constructor and Description |
---|
DefaultOioSocketChannelConfig(SocketChannel channel,
Socket javaSocket)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
protected void |
autoReadCleared()
Is called once
DefaultChannelConfig.setAutoRead(boolean) is called with false and DefaultChannelConfig.isAutoRead() was
true before. |
<T> T |
getOption(ChannelOption<T> option)
Return the value of the given
ChannelOption |
Map<ChannelOption<?>,Object> |
getOptions()
Return all set
ChannelOption 's. |
int |
getSoTimeout()
Returns the maximal time a operation on the underlying socket may block.
|
OioSocketChannelConfig |
setAllocator(ByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate buffers. |
OioSocketChannelConfig |
setAllowHalfClosure(boolean allowHalfClosure)
Sets whether the channel should not close itself when its remote peer shuts down output to
make the connection half-closed.
|
OioSocketChannelConfig |
setAutoRead(boolean autoRead)
Sets if
ChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. |
OioSocketChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connect timeout of the channel in milliseconds.
|
OioSocketChannelConfig |
setKeepAlive(boolean keepAlive)
Sets the
StandardSocketOptions.SO_KEEPALIVE option. |
OioSocketChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
Sets the maximum number of messages to read per read loop.
|
OioSocketChannelConfig |
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.
|
OioSocketChannelConfig |
setPerformancePreferences(int connectionTime,
int latency,
int bandwidth)
Sets the performance preferences as specified in
Socket.setPerformancePreferences(int, int, int) . |
OioSocketChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
Sets the
StandardSocketOptions.SO_RCVBUF option. |
OioSocketChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate receive buffers. |
OioSocketChannelConfig |
setReuseAddress(boolean reuseAddress)
Sets the
StandardSocketOptions.SO_REUSEADDR option. |
OioSocketChannelConfig |
setSendBufferSize(int sendBufferSize)
Sets the
StandardSocketOptions.SO_SNDBUF option. |
OioSocketChannelConfig |
setSoLinger(int soLinger)
Sets the
StandardSocketOptions.SO_LINGER option. |
OioSocketChannelConfig |
setSoTimeout(int timeout)
Sets the maximal time a operation on the underlying socket may block.
|
OioSocketChannelConfig |
setTcpNoDelay(boolean tcpNoDelay)
Sets the
StandardSocketOptions.TCP_NODELAY option. |
OioSocketChannelConfig |
setTrafficClass(int trafficClass)
Sets the
StandardSocketOptions.IP_TOS option. |
OioSocketChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
Sets the high water mark of the write buffer.
|
OioSocketChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
Sets the low water mark of the write buffer.
|
OioSocketChannelConfig |
setWriteSpinCount(int writeSpinCount)
Sets the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
getReceiveBufferSize, getSendBufferSize, getSoLinger, getTrafficClass, isAllowHalfClosure, isKeepAlive, isReuseAddress, isTcpNoDelay
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteSpinCount, isAutoRead, setOptions, validate
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getReceiveBufferSize, getSendBufferSize, getSoLinger, getTrafficClass, isAllowHalfClosure, isKeepAlive, isReuseAddress, isTcpNoDelay
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteSpinCount, isAutoRead, setOptions
@Deprecated public DefaultOioSocketChannelConfig(SocketChannel channel, Socket javaSocket)
public Map<ChannelOption<?>,Object> getOptions()
ChannelConfig
ChannelOption
's.getOptions
in interface ChannelConfig
getOptions
in class DefaultSocketChannelConfig
public <T> T getOption(ChannelOption<T> option)
ChannelConfig
ChannelOption
getOption
in interface ChannelConfig
getOption
in class DefaultSocketChannelConfig
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 DefaultSocketChannelConfig
true
if and only if the property has been setpublic OioSocketChannelConfig setSoTimeout(int timeout)
OioSocketChannelConfig
setSoTimeout
in interface OioSocketChannelConfig
public int getSoTimeout()
OioSocketChannelConfig
getSoTimeout
in interface OioSocketChannelConfig
public OioSocketChannelConfig setTcpNoDelay(boolean tcpNoDelay)
SocketChannelConfig
StandardSocketOptions.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 OioSocketChannelConfig
setTcpNoDelay
in interface SocketChannelConfig
setTcpNoDelay
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setSoLinger(int soLinger)
SocketChannelConfig
StandardSocketOptions.SO_LINGER
option.setSoLinger
in interface OioSocketChannelConfig
setSoLinger
in interface SocketChannelConfig
setSoLinger
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setSendBufferSize(int sendBufferSize)
SocketChannelConfig
StandardSocketOptions.SO_SNDBUF
option.setSendBufferSize
in interface OioSocketChannelConfig
setSendBufferSize
in interface SocketChannelConfig
setSendBufferSize
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setReceiveBufferSize(int receiveBufferSize)
SocketChannelConfig
StandardSocketOptions.SO_RCVBUF
option.setReceiveBufferSize
in interface OioSocketChannelConfig
setReceiveBufferSize
in interface SocketChannelConfig
setReceiveBufferSize
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setKeepAlive(boolean keepAlive)
SocketChannelConfig
StandardSocketOptions.SO_KEEPALIVE
option.setKeepAlive
in interface OioSocketChannelConfig
setKeepAlive
in interface SocketChannelConfig
setKeepAlive
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setTrafficClass(int trafficClass)
SocketChannelConfig
StandardSocketOptions.IP_TOS
option.setTrafficClass
in interface OioSocketChannelConfig
setTrafficClass
in interface SocketChannelConfig
setTrafficClass
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setReuseAddress(boolean reuseAddress)
SocketChannelConfig
StandardSocketOptions.SO_REUSEADDR
option.setReuseAddress
in interface OioSocketChannelConfig
setReuseAddress
in interface SocketChannelConfig
setReuseAddress
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setPerformancePreferences(int connectionTime, int latency, int bandwidth)
SocketChannelConfig
Socket.setPerformancePreferences(int, int, int)
.setPerformancePreferences
in interface OioSocketChannelConfig
setPerformancePreferences
in interface SocketChannelConfig
setPerformancePreferences
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setAllowHalfClosure(boolean allowHalfClosure)
SocketChannelConfig
true
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 OioSocketChannelConfig
setAllowHalfClosure
in interface SocketChannelConfig
setAllowHalfClosure
in class DefaultSocketChannelConfig
public OioSocketChannelConfig 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 OioSocketChannelConfig
setConnectTimeoutMillis
in interface SocketChannelConfig
setConnectTimeoutMillis
in class DefaultSocketChannelConfig
connectTimeoutMillis
- the connect timeout in milliseconds.
0
to disable.public OioSocketChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
ChannelConfig
setMaxMessagesPerRead
in interface ChannelConfig
setMaxMessagesPerRead
in interface OioSocketChannelConfig
setMaxMessagesPerRead
in interface SocketChannelConfig
setMaxMessagesPerRead
in class DefaultSocketChannelConfig
public OioSocketChannelConfig 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 OioSocketChannelConfig
setWriteSpinCount
in interface SocketChannelConfig
setWriteSpinCount
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate buffers.setAllocator
in interface ChannelConfig
setAllocator
in interface OioSocketChannelConfig
setAllocator
in interface SocketChannelConfig
setAllocator
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate receive buffers.setRecvByteBufAllocator
in interface ChannelConfig
setRecvByteBufAllocator
in interface OioSocketChannelConfig
setRecvByteBufAllocator
in interface SocketChannelConfig
setRecvByteBufAllocator
in class DefaultSocketChannelConfig
public OioSocketChannelConfig 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 OioSocketChannelConfig
setAutoRead
in interface SocketChannelConfig
setAutoRead
in class DefaultSocketChannelConfig
protected void autoReadCleared()
DefaultChannelConfig
DefaultChannelConfig.setAutoRead(boolean)
is called with false
and DefaultChannelConfig.isAutoRead()
was
true
before.autoReadCleared
in class DefaultChannelConfig
public OioSocketChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
Channel.isWritable()
will start to return false
.setWriteBufferHighWaterMark
in interface ChannelConfig
setWriteBufferHighWaterMark
in interface OioSocketChannelConfig
setWriteBufferHighWaterMark
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
Channel.isWritable()
will start to return
true
again.setWriteBufferLowWaterMark
in interface ChannelConfig
setWriteBufferLowWaterMark
in interface OioSocketChannelConfig
setWriteBufferLowWaterMark
in class DefaultSocketChannelConfig
public OioSocketChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to detect the size of a message.setMessageSizeEstimator
in interface ChannelConfig
setMessageSizeEstimator
in interface OioSocketChannelConfig
setMessageSizeEstimator
in interface SocketChannelConfig
setMessageSizeEstimator
in class DefaultSocketChannelConfig
Copyright © 2008–2015 The Netty Project. All rights reserved.