public class DefaultChannelConfig extends Object implements ChannelConfig
ChannelConfig
implementation.Modifier | Constructor and Description |
---|---|
|
DefaultChannelConfig(Channel channel) |
protected |
DefaultChannelConfig(Channel channel,
RecvByteBufAllocator allocator) |
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()
Deprecated.
|
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) |
<T extends 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.
|
WriteBufferWaterMark |
getWriteBufferWaterMark()
Returns the
WriteBufferWaterMark which is used for setting the high and 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 |
isAutoClose() |
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 |
setAutoClose(boolean autoClose) |
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)
Deprecated.
|
ChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
Set the
MessageSizeEstimator 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
RecvByteBufAllocator 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 |
setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
Set the
WriteBufferWaterMark which is used for setting the high and 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)
protected DefaultChannelConfig(Channel channel, RecvByteBufAllocator allocator)
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.@Deprecated public int getMaxMessagesPerRead()
getMaxMessagesPerRead
in interface ChannelConfig
IllegalStateException
- if getRecvByteBufAllocator()
does not return an object of type
MaxMessagesRecvByteBufAllocator
.@Deprecated public ChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
setMaxMessagesPerRead
in interface ChannelConfig
IllegalStateException
- if getRecvByteBufAllocator()
does not return an object of type
MaxMessagesRecvByteBufAllocator
.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 <T extends RecvByteBufAllocator> T getRecvByteBufAllocator()
ChannelConfig
RecvByteBufAllocator
which is used for the channel to allocate receive buffers.getRecvByteBufAllocator
in interface ChannelConfig
public ChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
RecvByteBufAllocator
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 boolean isAutoClose()
isAutoClose
in interface ChannelConfig
public ChannelConfig setAutoClose(boolean autoClose)
setAutoClose
in interface ChannelConfig
public int getWriteBufferHighWaterMark()
ChannelConfig
Channel.isWritable()
will start to return false
.getWriteBufferHighWaterMark
in interface ChannelConfig
public ChannelConfig 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
.
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
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.
setWriteBufferLowWaterMark
in interface ChannelConfig
public ChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
ChannelConfig
WriteBufferWaterMark
which is used for setting the high and low
water mark of the write buffer.setWriteBufferWaterMark
in interface ChannelConfig
public WriteBufferWaterMark getWriteBufferWaterMark()
ChannelConfig
WriteBufferWaterMark
which is used for setting the high and low
water mark of the write buffer.getWriteBufferWaterMark
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
MessageSizeEstimator
which is used for the channel
to detect the size of a message.setMessageSizeEstimator
in interface ChannelConfig
Copyright © 2008–2017 The Netty Project. All rights reserved.