public class DefaultChannelConfig extends Object implements ChannelConfig
SocketChannelConfig
implementation.Constructor and Description |
---|
DefaultChannelConfig(Channel channel) |
Modifier and Type | Method and Description |
---|---|
protected void |
autoReadCleared()
|
ByteBufAllocator |
getAllocator()
Returns
ByteBufAllocator which is used for the channel
to allocate buffers. |
int |
getConnectTimeoutMillis()
Returns the connect timeout of the channel in milliseconds.
|
int |
getMaxMessagesPerRead()
Returns the maximum number of messages to read per read loop.
|
MessageSizeEstimator |
getMessageSizeEstimator()
Returns
MessageSizeEstimator which is used for the channel
to detect the size of a message. |
<T> T |
getOption(ChannelOption<T> option)
Return the value of the given
ChannelOption |
Map<ChannelOption<?>,Object> |
getOptions()
Return all set
ChannelOption 's. |
protected Map<ChannelOption<?>,Object> |
getOptions(Map<ChannelOption<?>,Object> result,
ChannelOption<?>... options) |
RecvByteBufAllocator |
getRecvByteBufAllocator()
Returns
RecvByteBufAllocator which is used for the channel
to allocate receive buffers. |
int |
getWriteBufferHighWaterMark()
Returns the high water mark of the write buffer.
|
int |
getWriteBufferLowWaterMark()
Returns the low water mark of the write buffer.
|
int |
getWriteSpinCount()
Returns the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
boolean |
isAutoRead()
Returns
true if and only if ChannelHandlerContext.read() will be invoked automatically so that
a user application doesn't need to call it at all. |
ChannelConfig |
setAllocator(ByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate buffers. |
ChannelConfig |
setAutoRead(boolean autoRead)
Sets if
ChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. |
ChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connect timeout of the channel in milliseconds.
|
ChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
Sets the maximum number of messages to read per read loop.
|
ChannelConfig |
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.
|
boolean |
setOptions(Map<ChannelOption<?>,?> options)
Sets the configuration properties from the specified
Map . |
ChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate receive buffers. |
ChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
Sets the high water mark of the write buffer.
|
ChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
Sets the low water mark of the write buffer.
|
ChannelConfig |
setWriteSpinCount(int writeSpinCount)
Sets the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
protected <T> void |
validate(ChannelOption<T> option,
T value) |
protected final Channel channel
public DefaultChannelConfig(Channel channel)
public Map<ChannelOption<?>,Object> getOptions()
ChannelConfig
ChannelOption
's.getOptions
in interface ChannelConfig
protected Map<ChannelOption<?>,Object> getOptions(Map<ChannelOption<?>,Object> result, ChannelOption<?>... options)
public boolean setOptions(Map<ChannelOption<?>,?> options)
ChannelConfig
Map
.setOptions
in interface ChannelConfig
public <T> T getOption(ChannelOption<T> option)
ChannelConfig
ChannelOption
getOption
in interface ChannelConfig
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
true
if and only if the property has been setprotected <T> void validate(ChannelOption<T> option, T value)
public int getConnectTimeoutMillis()
ChannelConfig
Channel
does not support connect operation, this property is not
used at all, and therefore will be ignored.getConnectTimeoutMillis
in interface ChannelConfig
0
if disabled.public ChannelConfig 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
connectTimeoutMillis
- the connect timeout in milliseconds.
0
to disable.public int getMaxMessagesPerRead()
ChannelConfig
channelRead()
event.
If this value is greater than 1, an event loop might attempt to read multiple times to procure multiple messages.getMaxMessagesPerRead
in interface ChannelConfig
public ChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
ChannelConfig
setMaxMessagesPerRead
in interface ChannelConfig
public int getWriteSpinCount()
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
.getWriteSpinCount
in interface ChannelConfig
public ChannelConfig 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
public ByteBufAllocator getAllocator()
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate buffers.getAllocator
in interface ChannelConfig
public ChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate buffers.setAllocator
in interface ChannelConfig
public RecvByteBufAllocator getRecvByteBufAllocator()
ChannelConfig
RecvByteBufAllocator
which is used for the channel
to allocate receive buffers.getRecvByteBufAllocator
in interface ChannelConfig
public ChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate receive buffers.setRecvByteBufAllocator
in interface ChannelConfig
public boolean isAutoRead()
ChannelConfig
true
if and only if ChannelHandlerContext.read()
will be invoked automatically so that
a user application doesn't need to call it at all. The default value is true
.isAutoRead
in interface ChannelConfig
public ChannelConfig 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
protected void autoReadCleared()
public int getWriteBufferHighWaterMark()
ChannelConfig
Channel.isWritable()
will start to return false
.getWriteBufferHighWaterMark
in interface ChannelConfig
public ChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
Channel.isWritable()
will start to return false
.setWriteBufferHighWaterMark
in interface ChannelConfig
public int getWriteBufferLowWaterMark()
ChannelConfig
Channel.isWritable()
will start to return
true
again.getWriteBufferLowWaterMark
in interface ChannelConfig
public ChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
Channel.isWritable()
will start to return
true
again.setWriteBufferLowWaterMark
in interface ChannelConfig
public MessageSizeEstimator getMessageSizeEstimator()
ChannelConfig
MessageSizeEstimator
which is used for the channel
to detect the size of a message.getMessageSizeEstimator
in interface ChannelConfig
public ChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to detect the size of a message.setMessageSizeEstimator
in interface ChannelConfig
Copyright © 2008–2015 The Netty Project. All rights reserved.