Home / Class/ IoUringStreamChannelConfig Class — netty Architecture

IoUringStreamChannelConfig Class — netty Architecture

Architecture documentation for the IoUringStreamChannelConfig class in IoUringStreamChannelConfig.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  781d3050_dd4f_29c1_27ae_cf7241773c20["IoUringStreamChannelConfig"]
  178bce1d_1fef_f9af_fe26_69778af0d8e3["IoUringStreamChannelConfig.java"]
  781d3050_dd4f_29c1_27ae_cf7241773c20 -->|defined in| 178bce1d_1fef_f9af_fe26_69778af0d8e3
  211fa04a_2b0c_db8e_e134_b94d734f384d["IoUringStreamChannelConfig()"]
  781d3050_dd4f_29c1_27ae_cf7241773c20 -->|method| 211fa04a_2b0c_db8e_e134_b94d734f384d
  95bc793b_c4d9_8cb9_b396_8ba4607bca01["T()"]
  781d3050_dd4f_29c1_27ae_cf7241773c20 -->|method| 95bc793b_c4d9_8cb9_b396_8ba4607bca01
  2301adde_41ee_159a_e44d_69af6ad00bc0["setOption()"]
  781d3050_dd4f_29c1_27ae_cf7241773c20 -->|method| 2301adde_41ee_159a_e44d_69af6ad00bc0
  9dcf213a_b0c2_a4db_6234_be2a5df2edb6["getOptions()"]
  781d3050_dd4f_29c1_27ae_cf7241773c20 -->|method| 9dcf213a_b0c2_a4db_6234_be2a5df2edb6
  301f456a_584b_e5f6_c497_0c3db9d2ccd6["getBufferGroupId()"]
  781d3050_dd4f_29c1_27ae_cf7241773c20 -->|method| 301f456a_584b_e5f6_c497_0c3db9d2ccd6

Relationship Graph

Source Code

transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringStreamChannelConfig.java lines 24–69

abstract class IoUringStreamChannelConfig extends IoUringChannelConfig {

    private volatile short bufferGroupId = -1;

    IoUringStreamChannelConfig(AbstractIoUringChannel channel) {
        super(channel);
    }

    IoUringStreamChannelConfig(AbstractIoUringChannel channel, RecvByteBufAllocator allocator) {
        super(channel, allocator);
    }

    @SuppressWarnings("unchecked")
    @Override
    public <T> T getOption(ChannelOption<T> option) {
        if (option == IoUringChannelOption.IO_URING_BUFFER_GROUP_ID) {
            return (T) Short.valueOf(getBufferGroupId());
        }
        return super.getOption(option);
    }

    @Override
    public <T> boolean setOption(ChannelOption<T> option, T value) {
        if (option == IoUringChannelOption.IO_URING_BUFFER_GROUP_ID) {
            setBufferGroupId((Short) value);
            return true;
        }
        return super.setOption(option, value);
    }

    @Override
    public Map<ChannelOption<?>, Object> getOptions() {
        return getOptions(super.getOptions(),
                IoUringChannelOption.IO_URING_BUFFER_GROUP_ID
        );
    }

    short getBufferGroupId() {
        return bufferGroupId;
    }

    IoUringStreamChannelConfig setBufferGroupId(short bufferGroupId) {
        this.bufferGroupId = (short) ObjectUtil.checkPositiveOrZero(bufferGroupId, "bufferGroupId");
        return this;
    }
}

Frequently Asked Questions

What is the IoUringStreamChannelConfig class?
IoUringStreamChannelConfig is a class in the netty codebase, defined in transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringStreamChannelConfig.java.
Where is IoUringStreamChannelConfig defined?
IoUringStreamChannelConfig is defined in transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringStreamChannelConfig.java at line 24.

Analyze Your Own Codebase

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

Try Supermodel Free