Home / Type/ ChannelConfig Type — netty Architecture

ChannelConfig Type — netty Architecture

Architecture documentation for the ChannelConfig type/interface in ChannelConfig.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  83474b41_2930_b804_e596_0c369e4aed08["ChannelConfig"]
  91448f0c_c55b_1453_cc4a_10e8ab92acfe["ChannelConfig.java"]
  83474b41_2930_b804_e596_0c369e4aed08 -->|defined in| 91448f0c_c55b_1453_cc4a_10e8ab92acfe
  style 83474b41_2930_b804_e596_0c369e4aed08 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

transport/src/main/java/io/netty/channel/ChannelConfig.java lines 65–268

public interface ChannelConfig {

    /**
     * Return all set {@link ChannelOption}'s.
     */
    Map<ChannelOption<?>, Object> getOptions();

    /**
     * Sets the configuration properties from the specified {@link Map}.
     */
    boolean setOptions(Map<ChannelOption<?>, ?> options);

    /**
     * Return the value of the given {@link ChannelOption}
     */
    <T> T getOption(ChannelOption<T> option);

    /**
     * Sets a configuration property with the specified name and value.
     * To override this method properly, you must call the super class:
     * <pre>
     * public boolean setOption(ChannelOption&lt;T&gt; option, T value) {
     *     if (super.setOption(option, value)) {
     *         return true;
     *     }
     *
     *     if (option.equals(additionalOption)) {
     *         ....
     *         return true;
     *     }
     *
     *     return false;
     * }
     * </pre>
     *
     * @return {@code true} if and only if the property has been set
     */
    <T> boolean setOption(ChannelOption<T> option, T value);

    /**
     * Returns the connect timeout of the channel in milliseconds.  If the
     * {@link Channel} does not support connect operation, this property is not
     * used at all, and therefore will be ignored.
     *
     * @return the connect timeout in milliseconds.  {@code 0} if disabled.
     */
    int getConnectTimeoutMillis();

    /**
     * Sets the connect timeout of the channel in milliseconds.  If the
     * {@link Channel} does not support connect operation, this property is not
     * used at all, and therefore will be ignored.
     *
     * @param connectTimeoutMillis the connect timeout in milliseconds.
     *                             {@code 0} to disable.
     */
    ChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis);

    /**
     * @deprecated Use {@link MaxMessagesRecvByteBufAllocator} and
     * {@link MaxMessagesRecvByteBufAllocator#maxMessagesPerRead()}.
     * <p>
     * Returns the maximum number of messages to read per read loop.
     * a {@link ChannelInboundHandler#channelRead(ChannelHandlerContext, Object) channelRead()} event.
     * If this value is greater than 1, an event loop might attempt to read multiple times to procure multiple messages.
     */
    @Deprecated
    int getMaxMessagesPerRead();

    /**
     * @deprecated Use {@link MaxMessagesRecvByteBufAllocator} and
     * {@link MaxMessagesRecvByteBufAllocator#maxMessagesPerRead(int)}.
     * <p>
     * Sets the maximum number of messages to read per read loop.
     * If this value is greater than 1, an event loop might attempt to read multiple times to procure multiple messages.
     */
    @Deprecated
    ChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead);

    /**
     * Returns the maximum loop count for a write operation until

Frequently Asked Questions

What is the ChannelConfig type?
ChannelConfig is a type/interface in the netty codebase, defined in transport/src/main/java/io/netty/channel/ChannelConfig.java.
Where is ChannelConfig defined?
ChannelConfig is defined in transport/src/main/java/io/netty/channel/ChannelConfig.java at line 65.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free