Home / Class/ KQueueDomainSocketChannelConfig Class — netty Architecture

KQueueDomainSocketChannelConfig Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  0e6891a8_615b_d38f_a554_c078de246cf4["KQueueDomainSocketChannelConfig"]
  8ab9ea10_1392_5b1d_c178_48de2c0f5567["KQueueDomainSocketChannelConfig.java"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|defined in| 8ab9ea10_1392_5b1d_c178_48de2c0f5567
  b85fedd7_bff6_0d1f_5161_7454e8d80d82["KQueueDomainSocketChannelConfig()"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|method| b85fedd7_bff6_0d1f_5161_7454e8d80d82
  cc64289c_e734_4f79_c896_3b23207b9d06["getOptions()"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|method| cc64289c_e734_4f79_c896_3b23207b9d06
  d98ae68f_c82b_2e44_2572_2da524566516["T()"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|method| d98ae68f_c82b_2e44_2572_2da524566516
  c838a421_5eb2_82ec_4ac1_72e99aaf4e2d["setOption()"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|method| c838a421_5eb2_82ec_4ac1_72e99aaf4e2d
  2167972a_cd4c_3e3c_e657_0206c80506f6["DomainSocketReadMode()"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|method| 2167972a_cd4c_3e3c_e657_0206c80506f6
  c17c74a1_9a32_e7f5_4c44_b4d257b4fca1["getSendBufferSize()"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|method| c17c74a1_9a32_e7f5_4c44_b4d257b4fca1
  7d293bb4_c610_5c42_5b64_6254b4dc36a6["getReceiveBufferSize()"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|method| 7d293bb4_c610_5c42_5b64_6254b4dc36a6
  8cbe9347_659b_56fc_a75f_0861b10d3bf9["isAllowHalfClosure()"]
  0e6891a8_615b_d38f_a554_c078de246cf4 -->|method| 8cbe9347_659b_56fc_a75f_0861b10d3bf9

Relationship Graph

Source Code

transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannelConfig.java lines 37–218

public final class KQueueDomainSocketChannelConfig extends KQueueChannelConfig
        implements DomainSocketChannelConfig, DuplexChannelConfig {
    private volatile DomainSocketReadMode mode = DomainSocketReadMode.BYTES;
    private volatile boolean allowHalfClosure;

    KQueueDomainSocketChannelConfig(AbstractKQueueChannel channel) {
        super(channel);
    }

    @Override
    public Map<ChannelOption<?>, Object> getOptions() {
        return getOptions(super.getOptions(), DOMAIN_SOCKET_READ_MODE, ALLOW_HALF_CLOSURE, SO_SNDBUF, SO_RCVBUF);
    }

    @SuppressWarnings("unchecked")
    @Override
    public <T> T getOption(ChannelOption<T> option) {
        if (option == DOMAIN_SOCKET_READ_MODE) {
            return (T) getReadMode();
        }
        if (option == ALLOW_HALF_CLOSURE) {
            return (T) Boolean.valueOf(isAllowHalfClosure());
        }
        if (option == SO_SNDBUF) {
            return (T) Integer.valueOf(getSendBufferSize());
        }
        if (option == SO_RCVBUF) {
            return (T) Integer.valueOf(getReceiveBufferSize());
        }
        return super.getOption(option);
    }

    @Override
    public <T> boolean setOption(ChannelOption<T> option, T value) {
        validate(option, value);

        if (option == DOMAIN_SOCKET_READ_MODE) {
            setReadMode((DomainSocketReadMode) value);
        } else if (option == ALLOW_HALF_CLOSURE) {
            setAllowHalfClosure((Boolean) value);
        } else if (option == SO_SNDBUF) {
            setSendBufferSize((Integer) value);
        } else if (option == SO_RCVBUF) {
            setReceiveBufferSize((Integer) value);
        } else {
            return super.setOption(option, value);
        }

        return true;
    }

    @Override
    public KQueueDomainSocketChannelConfig setRcvAllocTransportProvidesGuess(boolean transportProvidesGuess) {
        super.setRcvAllocTransportProvidesGuess(transportProvidesGuess);
        return this;
    }

    @Override
    @Deprecated
    public KQueueDomainSocketChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead) {
        super.setMaxMessagesPerRead(maxMessagesPerRead);
        return this;
    }

    @Override
    public KQueueDomainSocketChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis) {
        super.setConnectTimeoutMillis(connectTimeoutMillis);
        return this;
    }

    @Override
    public KQueueDomainSocketChannelConfig setWriteSpinCount(int writeSpinCount) {
        super.setWriteSpinCount(writeSpinCount);
        return this;
    }

    @Override
    public KQueueDomainSocketChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator) {
        super.setRecvByteBufAllocator(allocator);
        return this;
    }

Frequently Asked Questions

What is the KQueueDomainSocketChannelConfig class?
KQueueDomainSocketChannelConfig is a class in the netty codebase, defined in transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannelConfig.java.
Where is KQueueDomainSocketChannelConfig defined?
KQueueDomainSocketChannelConfig is defined in transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueDomainSocketChannelConfig.java at line 37.

Analyze Your Own Codebase

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

Try Supermodel Free