NioDomainServerSocketChannelConfig Class — netty Architecture
Architecture documentation for the NioDomainServerSocketChannelConfig class in NioServerDomainSocketChannel.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD cbf94749_a954_a555_3394_1a2eb240e292["NioDomainServerSocketChannelConfig"] 2caefa2b_166d_5c45_360d_2a71cc75c69a["NioServerDomainSocketChannel.java"] cbf94749_a954_a555_3394_1a2eb240e292 -->|defined in| 2caefa2b_166d_5c45_360d_2a71cc75c69a 0e3821a0_354d_7c88_7554_fe2338ec0e8f["NioDomainServerSocketChannelConfig()"] cbf94749_a954_a555_3394_1a2eb240e292 -->|method| 0e3821a0_354d_7c88_7554_fe2338ec0e8f 63f883cd_dba5_5e9e_dfef_815ec80c3c14["autoReadCleared()"] cbf94749_a954_a555_3394_1a2eb240e292 -->|method| 63f883cd_dba5_5e9e_dfef_815ec80c3c14 e5e12348_debd_5f4d_5b89_8950852e6e93["getOptions()"] cbf94749_a954_a555_3394_1a2eb240e292 -->|method| e5e12348_debd_5f4d_5b89_8950852e6e93 5805ca8f_fe47_a1e7_82e7_69f8ee325e9e["T()"] cbf94749_a954_a555_3394_1a2eb240e292 -->|method| 5805ca8f_fe47_a1e7_82e7_69f8ee325e9e 316fc639_ed5d_5e71_6106_a38140f2a475["setOption()"] cbf94749_a954_a555_3394_1a2eb240e292 -->|method| 316fc639_ed5d_5e71_6106_a38140f2a475 5781cdbe_3dc8_11b4_de49_6b0a980368d1["getBacklog()"] cbf94749_a954_a555_3394_1a2eb240e292 -->|method| 5781cdbe_3dc8_11b4_de49_6b0a980368d1 b8fdeaff_06c7_4f9f_5c43_8c4a27596625["ServerSocketChannel()"] cbf94749_a954_a555_3394_1a2eb240e292 -->|method| b8fdeaff_06c7_4f9f_5c43_8c4a27596625
Relationship Graph
Source Code
transport/src/main/java/io/netty/channel/socket/nio/NioServerDomainSocketChannel.java lines 202–265
private final class NioDomainServerSocketChannelConfig extends DefaultChannelConfig {
private volatile int backlog = NetUtil.SOMAXCONN;
private NioDomainServerSocketChannelConfig(NioServerDomainSocketChannel channel) {
super(channel, new ServerChannelRecvByteBufAllocator());
}
@Override
protected void autoReadCleared() {
clearReadPending();
}
@Override
public Map<ChannelOption<?>, Object> getOptions() {
List<ChannelOption<?>> options = new ArrayList<ChannelOption<?>>();
options.add(SO_BACKLOG);
for (ChannelOption<?> opt : NioChannelOption.getOptions(jdkChannel())) {
options.add(opt);
}
return getOptions(super.getOptions(), options.toArray(new ChannelOption[0]));
}
@SuppressWarnings("unchecked")
@Override
public <T> T getOption(ChannelOption<T> option) {
if (option == SO_BACKLOG) {
return (T) Integer.valueOf(getBacklog());
}
if (option instanceof NioChannelOption) {
return NioChannelOption.getOption(jdkChannel(), (NioChannelOption<T>) option);
}
return super.getOption(option);
}
@Override
public <T> boolean setOption(ChannelOption<T> option, T value) {
if (option == SO_BACKLOG) {
validate(option, value);
setBacklog((Integer) value);
} else if (option instanceof NioChannelOption) {
return NioChannelOption.setOption(jdkChannel(), (NioChannelOption<T>) option, value);
} else {
return super.setOption(option, value);
}
return true;
}
private int getBacklog() {
return backlog;
}
private NioDomainServerSocketChannelConfig setBacklog(int backlog) {
checkPositiveOrZero(backlog, "backlog");
this.backlog = backlog;
return this;
}
private ServerSocketChannel jdkChannel() {
return ((NioServerDomainSocketChannel) channel).javaChannel();
}
}
Source
Frequently Asked Questions
What is the NioDomainServerSocketChannelConfig class?
NioDomainServerSocketChannelConfig is a class in the netty codebase, defined in transport/src/main/java/io/netty/channel/socket/nio/NioServerDomainSocketChannel.java.
Where is NioDomainServerSocketChannelConfig defined?
NioDomainServerSocketChannelConfig is defined in transport/src/main/java/io/netty/channel/socket/nio/NioServerDomainSocketChannel.java at line 202.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free