IoUringDomainSocketChannelConfig Class — netty Architecture
Architecture documentation for the IoUringDomainSocketChannelConfig class in IoUringDomainSocketChannelConfig.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 558671c8_3243_39e9_45ca_33a063474796["IoUringDomainSocketChannelConfig"] 33033938_1041_1a60_6780_4286bebeb9cd["IoUringDomainSocketChannelConfig.java"] 558671c8_3243_39e9_45ca_33a063474796 -->|defined in| 33033938_1041_1a60_6780_4286bebeb9cd 65fabc7e_3b0e_c9e1_9c74_49fd6c0565cd["IoUringDomainSocketChannelConfig()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| 65fabc7e_3b0e_c9e1_9c74_49fd6c0565cd 163db47d_32ee_8001_8f37_558695daafc3["getOptions()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| 163db47d_32ee_8001_8f37_558695daafc3 4dfd3ee4_582b_003e_4be2_6503880bc267["T()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| 4dfd3ee4_582b_003e_4be2_6503880bc267 6343a2de_046a_2ae6_2359_890bfa6bdeee["setOption()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| 6343a2de_046a_2ae6_2359_890bfa6bdeee 5e5209c5_b347_46e1_09a8_3051cfc9a5a4["getSendBufferSize()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| 5e5209c5_b347_46e1_09a8_3051cfc9a5a4 67361792_29cd_e846_c7b6_ec6ebfd19b70["getReceiveBufferSize()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| 67361792_29cd_e846_c7b6_ec6ebfd19b70 2206b71d_6178_767b_bd80_431447346b58["DomainSocketReadMode()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| 2206b71d_6178_767b_bd80_431447346b58 77e5e3b0_00c3_625c_c028_cf8a4c19725d["isAllowHalfClosure()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| 77e5e3b0_00c3_625c_c028_cf8a4c19725d fd5f52da_7e1c_415c_3bcb_f640c575a0ee["DuplexChannelConfig()"] 558671c8_3243_39e9_45ca_33a063474796 -->|method| fd5f52da_7e1c_415c_3bcb_f640c575a0ee
Relationship Graph
Source Code
transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringDomainSocketChannelConfig.java lines 38–222
final class IoUringDomainSocketChannelConfig extends IoUringStreamChannelConfig
implements DomainSocketChannelConfig, DuplexChannelConfig {
@SuppressWarnings("checkstyle:LineLength") //Avoid Checkstyle thinking this is too long
private static final AtomicReferenceFieldUpdater<IoUringDomainSocketChannelConfig, DomainSocketReadMode> MODE_UPDATER =
AtomicReferenceFieldUpdater.newUpdater(IoUringDomainSocketChannelConfig.class, DomainSocketReadMode.class, "mode");
private volatile DomainSocketReadMode mode = DomainSocketReadMode.BYTES;
private volatile boolean allowHalfClosure;
IoUringDomainSocketChannelConfig(IoUringDomainSocketChannel channel) {
super(channel);
}
@Override
public Map<ChannelOption<?>, Object> getOptions() {
return getOptions(super.getOptions(), DOMAIN_SOCKET_READ_MODE, ALLOW_HALF_CLOSURE, SO_SNDBUF, SO_RCVBUF);
}
@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;
}
public int getSendBufferSize() {
try {
return ((IoUringDomainSocketChannel) channel).socket.getSendBufferSize();
} catch (IOException e) {
throw new ChannelException(e);
}
}
public IoUringDomainSocketChannelConfig setSendBufferSize(int sendBufferSize) {
try {
((IoUringDomainSocketChannel) channel).socket.setSendBufferSize(sendBufferSize);
return this;
} catch (IOException e) {
throw new ChannelException(e);
}
}
public int getReceiveBufferSize() {
try {
return ((IoUringDomainSocketChannel) channel).socket.getReceiveBufferSize();
} catch (IOException e) {
throw new ChannelException(e);
}
}
public IoUringDomainSocketChannelConfig setReceiveBufferSize(int receiveBufferSize) {
try {
Source
Frequently Asked Questions
What is the IoUringDomainSocketChannelConfig class?
IoUringDomainSocketChannelConfig is a class in the netty codebase, defined in transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringDomainSocketChannelConfig.java.
Where is IoUringDomainSocketChannelConfig defined?
IoUringDomainSocketChannelConfig is defined in transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringDomainSocketChannelConfig.java at line 38.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free