KQueueServerSocketChannelConfig Class — netty Architecture
Architecture documentation for the KQueueServerSocketChannelConfig class in KQueueServerSocketChannelConfig.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 3be4a70b_19bc_7b76_5172_ddd5205f06e2["KQueueServerSocketChannelConfig"] ef5c86b9_99c7_b89e_043b_4239dda0d143["KQueueServerSocketChannelConfig.java"] 3be4a70b_19bc_7b76_5172_ddd5205f06e2 -->|defined in| ef5c86b9_99c7_b89e_043b_4239dda0d143 7178db12_b730_1ab0_21ae_4219b768018d["KQueueServerSocketChannelConfig()"] 3be4a70b_19bc_7b76_5172_ddd5205f06e2 -->|method| 7178db12_b730_1ab0_21ae_4219b768018d 3a902c5f_6f48_1296_d927_b8b6edf8a3f5["getOptions()"] 3be4a70b_19bc_7b76_5172_ddd5205f06e2 -->|method| 3a902c5f_6f48_1296_d927_b8b6edf8a3f5 5f4f7be3_4c77_280e_bc3e_1ec01a4c74c5["T()"] 3be4a70b_19bc_7b76_5172_ddd5205f06e2 -->|method| 5f4f7be3_4c77_280e_bc3e_1ec01a4c74c5 3d15f1e1_aa44_0a2e_0b2f_1218d7993ff8["setOption()"] 3be4a70b_19bc_7b76_5172_ddd5205f06e2 -->|method| 3d15f1e1_aa44_0a2e_0b2f_1218d7993ff8 fd8d85d8_f017_6ec5_6bcd_5d98223110fc["isReusePort()"] 3be4a70b_19bc_7b76_5172_ddd5205f06e2 -->|method| fd8d85d8_f017_6ec5_6bcd_5d98223110fc 55dbb0a7_693f_a8a0_814c_87c07023892c["AcceptFilter()"] 3be4a70b_19bc_7b76_5172_ddd5205f06e2 -->|method| 55dbb0a7_693f_a8a0_814c_87c07023892c
Relationship Graph
Source Code
transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueServerSocketChannelConfig.java lines 31–204
public class KQueueServerSocketChannelConfig extends KQueueServerChannelConfig {
KQueueServerSocketChannelConfig(KQueueServerSocketChannel channel) {
super(channel);
// Use SO_REUSEADDR by default as java.nio does the same.
//
// See https://github.com/netty/netty/issues/2605
setReuseAddress(true);
}
@Override
public Map<ChannelOption<?>, Object> getOptions() {
return getOptions(super.getOptions(), SO_REUSEPORT, SO_ACCEPTFILTER);
}
@SuppressWarnings("unchecked")
@Override
public <T> T getOption(ChannelOption<T> option) {
if (option == SO_REUSEPORT) {
return (T) Boolean.valueOf(isReusePort());
}
if (option == SO_ACCEPTFILTER) {
return (T) getAcceptFilter();
}
return super.getOption(option);
}
@Override
public <T> boolean setOption(ChannelOption<T> option, T value) {
validate(option, value);
if (option == SO_REUSEPORT) {
setReusePort((Boolean) value);
} else if (option == SO_ACCEPTFILTER) {
setAcceptFilter((AcceptFilter) value);
} else {
return super.setOption(option, value);
}
return true;
}
public KQueueServerSocketChannelConfig setReusePort(boolean reusePort) {
try {
((KQueueServerSocketChannel) channel).socket.setReusePort(reusePort);
return this;
} catch (IOException e) {
throw new ChannelException(e);
}
}
public boolean isReusePort() {
try {
return ((KQueueServerSocketChannel) channel).socket.isReusePort();
} catch (IOException e) {
throw new ChannelException(e);
}
}
public KQueueServerSocketChannelConfig setAcceptFilter(AcceptFilter acceptFilter) {
try {
((KQueueServerSocketChannel) channel).socket.setAcceptFilter(acceptFilter);
return this;
} catch (IOException e) {
throw new ChannelException(e);
}
}
public AcceptFilter getAcceptFilter() {
try {
return ((KQueueServerSocketChannel) channel).socket.getAcceptFilter();
} catch (IOException e) {
throw new ChannelException(e);
}
}
@Override
public KQueueServerSocketChannelConfig setRcvAllocTransportProvidesGuess(boolean transportProvidesGuess) {
super.setRcvAllocTransportProvidesGuess(transportProvidesGuess);
return this;
}
Defined In
Source
Frequently Asked Questions
What is the KQueueServerSocketChannelConfig class?
KQueueServerSocketChannelConfig is a class in the netty codebase, defined in transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueServerSocketChannelConfig.java.
Where is KQueueServerSocketChannelConfig defined?
KQueueServerSocketChannelConfig is defined in transport-classes-kqueue/src/main/java/io/netty/channel/kqueue/KQueueServerSocketChannelConfig.java at line 31.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free