Home / Class/ DefaultUdtChannelConfig Class — netty Architecture

DefaultUdtChannelConfig Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3["DefaultUdtChannelConfig"]
  53f9c255_44a8_e9de_2c53_49e85c0cc401["DefaultUdtChannelConfig.java"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|defined in| 53f9c255_44a8_e9de_2c53_49e85c0cc401
  363662e9_6e97_d1d2_26dc_2b5aa47e2af9["DefaultUdtChannelConfig()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 363662e9_6e97_d1d2_26dc_2b5aa47e2af9
  75836414_92e0_4bec_b89f_b7ef02ba4108["apply()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 75836414_92e0_4bec_b89f_b7ef02ba4108
  b01aa860_e414_02ca_a6de_ac8976a267c1["getProtocolReceiveBufferSize()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| b01aa860_e414_02ca_a6de_ac8976a267c1
  491b3bd5_a9bc_26eb_2883_7c99862b6a01["T()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 491b3bd5_a9bc_26eb_2883_7c99862b6a01
  b27a5885_7494_af57_49b1_1ccaadb244bd["getOptions()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| b27a5885_7494_af57_49b1_1ccaadb244bd
  15ec87a2_94e7_411f_da09_5a0ad1a23d18["getReceiveBufferSize()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 15ec87a2_94e7_411f_da09_5a0ad1a23d18
  954447b1_14a2_e726_ced2_7f351174042b["getSendBufferSize()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 954447b1_14a2_e726_ced2_7f351174042b
  32e3655e_e837_b4ec_be4e_66b68a6f47b8["getSoLinger()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 32e3655e_e837_b4ec_be4e_66b68a6f47b8
  9f772fd7_f26a_a496_4c6e_826225c2056f["isReuseAddress()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 9f772fd7_f26a_a496_4c6e_826225c2056f
  5eefd0e8_1f8d_b581_3f89_3f3c4674d882["UdtChannelConfig()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 5eefd0e8_1f8d_b581_3f89_3f3c4674d882
  4173a1af_23cb_8d5d_429d_5e531b53324e["setOption()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 4173a1af_23cb_8d5d_429d_5e531b53324e
  f3995b5d_13b7_f2a5_0479_8be5d671ca02["getSystemReceiveBufferSize()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| f3995b5d_13b7_f2a5_0479_8be5d671ca02
  82773677_ace7_094b_871f_e4ae9d7099be["getProtocolSendBufferSize()"]
  a7de2cbf_72aa_6c79_3c58_cfb558a30cd3 -->|method| 82773677_ace7_094b_871f_e4ae9d7099be

Relationship Graph

Source Code

transport-udt/src/main/java/io/netty/channel/udt/DefaultUdtChannelConfig.java lines 45–313

@Deprecated
public class DefaultUdtChannelConfig extends DefaultChannelConfig implements
        UdtChannelConfig {

    private static final int K = 1024;
    private static final int M = K * K;

    private volatile int protocolReceiveBufferSize = 10 * M;
    private volatile int protocolSendBufferSize = 10 * M;

    private volatile int systemReceiveBufferSize = M;
    private volatile int systemSendBufferSize = M;

    private volatile int allocatorReceiveBufferSize = 128 * K;
    private volatile int allocatorSendBufferSize = 128 * K;

    private volatile int soLinger;

    private volatile boolean reuseAddress = true;

    public DefaultUdtChannelConfig(final UdtChannel channel,
            final ChannelUDT channelUDT, final boolean apply)
            throws IOException {
        super(channel);
        if (apply) {
            apply(channelUDT);
        }
    }

    protected void apply(final ChannelUDT channelUDT) throws IOException {
        final SocketUDT socketUDT = channelUDT.socketUDT();
        socketUDT.setReuseAddress(isReuseAddress());
        socketUDT.setSendBufferSize(getSendBufferSize());
        if (getSoLinger() <= 0) {
            socketUDT.setSoLinger(false, 0);
        } else {
            socketUDT.setSoLinger(true, getSoLinger());
        }
        socketUDT.setOption(OptionUDT.Protocol_Receive_Buffer_Size,
                getProtocolReceiveBufferSize());
        socketUDT.setOption(OptionUDT.Protocol_Send_Buffer_Size,
                getProtocolSendBufferSize());
        socketUDT.setOption(OptionUDT.System_Receive_Buffer_Size,
                getSystemReceiveBufferSize());
        socketUDT.setOption(OptionUDT.System_Send_Buffer_Size,
                getSystemSendBufferSize());
    }

    @Override
    public int getProtocolReceiveBufferSize() {
        return protocolReceiveBufferSize;
    }

    @SuppressWarnings("unchecked")
    @Override
    public <T> T getOption(final ChannelOption<T> option) {
        if (option == PROTOCOL_RECEIVE_BUFFER_SIZE) {
            return (T) Integer.valueOf(getProtocolReceiveBufferSize());
        }
        if (option == PROTOCOL_SEND_BUFFER_SIZE) {
            return (T) Integer.valueOf(getProtocolSendBufferSize());
        }
        if (option == SYSTEM_RECEIVE_BUFFER_SIZE) {
            return (T) Integer.valueOf(getSystemReceiveBufferSize());
        }
        if (option == SYSTEM_SEND_BUFFER_SIZE) {
            return (T) Integer.valueOf(getSystemSendBufferSize());
        }
        if (option == SO_RCVBUF) {
            return (T) Integer.valueOf(getReceiveBufferSize());
        }
        if (option == SO_SNDBUF) {
            return (T) Integer.valueOf(getSendBufferSize());
        }
        if (option == SO_REUSEADDR) {
            return (T) Boolean.valueOf(isReuseAddress());
        }
        if (option == SO_LINGER) {
            return (T) Integer.valueOf(getSoLinger());
        }
        return super.getOption(option);

Frequently Asked Questions

What is the DefaultUdtChannelConfig class?
DefaultUdtChannelConfig is a class in the netty codebase, defined in transport-udt/src/main/java/io/netty/channel/udt/DefaultUdtChannelConfig.java.
Where is DefaultUdtChannelConfig defined?
DefaultUdtChannelConfig is defined in transport-udt/src/main/java/io/netty/channel/udt/DefaultUdtChannelConfig.java at line 45.

Analyze Your Own Codebase

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

Try Supermodel Free