QuicCodecBuilder Class — netty Architecture
Architecture documentation for the QuicCodecBuilder class in QuicCodecBuilder.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 9d27e66b_9ca6_33cb_346d_fac27c6dd310["QuicCodecBuilder"] 4ba1d440_3771_dc1c_07e9_18b82ca22d84["QuicCodecBuilder.java"] 9d27e66b_9ca6_33cb_346d_fac27c6dd310 -->|defined in| 4ba1d440_3771_dc1c_07e9_18b82ca22d84 e8c1a492_bb51_04a9_5353_7d73be4739c7["QuicCodecBuilder()"] 9d27e66b_9ca6_33cb_346d_fac27c6dd310 -->|method| e8c1a492_bb51_04a9_5353_7d73be4739c7 b0bd63e6_735b_af4d_9095_3ab690d55423["B()"] 9d27e66b_9ca6_33cb_346d_fac27c6dd310 -->|method| b0bd63e6_735b_af4d_9095_3ab690d55423 1274f2ed_7559_faf1_e857_d7f961c33275["QuicheConfig()"] 9d27e66b_9ca6_33cb_346d_fac27c6dd310 -->|method| 1274f2ed_7559_faf1_e857_d7f961c33275 0f3c2c85_126b_1d39_0c1e_f5193ce37ef1["validate()"] 9d27e66b_9ca6_33cb_346d_fac27c6dd310 -->|method| 0f3c2c85_126b_1d39_0c1e_f5193ce37ef1 ccc99d5f_ecfe_c4ca_1c81_0f4cc0604444["ChannelHandler()"] 9d27e66b_9ca6_33cb_346d_fac27c6dd310 -->|method| ccc99d5f_ecfe_c4ca_1c81_0f4cc0604444
Relationship Graph
Source Code
codec-classes-quic/src/main/java/io/netty/handler/codec/quic/QuicCodecBuilder.java lines 34–541
public abstract class QuicCodecBuilder<B extends QuicCodecBuilder<B>> {
private final boolean server;
private Boolean grease;
private Long maxIdleTimeout;
private Long maxRecvUdpPayloadSize;
private Long maxSendUdpPayloadSize;
private Long initialMaxData;
private Long initialMaxStreamDataBidiLocal;
private Long initialMaxStreamDataBidiRemote;
private Long initialMaxStreamDataUni;
private Long initialMaxStreamsBidi;
private Long initialMaxStreamsUni;
private Long ackDelayExponent;
private Long maxAckDelay;
private Boolean disableActiveMigration;
private Boolean enableHystart;
private Boolean discoverPmtu;
private QuicCongestionControlAlgorithm congestionControlAlgorithm;
private Integer initialCongestionWindowPackets;
private int localConnIdLength;
private Function<QuicChannel, ? extends QuicSslEngine> sslEngineProvider;
private FlushStrategy flushStrategy = FlushStrategy.DEFAULT;
private Integer recvQueueLen;
private Integer sendQueueLen;
private Long activeConnectionIdLimit;
private byte[] statelessResetToken;
private Executor sslTaskExecutor;
// package-private for testing only
int version;
QuicCodecBuilder(boolean server) {
Quic.ensureAvailability();
this.version = Quiche.QUICHE_PROTOCOL_VERSION;
this.localConnIdLength = Quiche.QUICHE_MAX_CONN_ID_LEN;
this.server = server;
}
QuicCodecBuilder(QuicCodecBuilder<B> builder) {
Quic.ensureAvailability();
this.server = builder.server;
this.grease = builder.grease;
this.maxIdleTimeout = builder.maxIdleTimeout;
this.maxRecvUdpPayloadSize = builder.maxRecvUdpPayloadSize;
this.maxSendUdpPayloadSize = builder.maxSendUdpPayloadSize;
this.initialMaxData = builder.initialMaxData;
this.initialMaxStreamDataBidiLocal = builder.initialMaxStreamDataBidiLocal;
this.initialMaxStreamDataBidiRemote = builder.initialMaxStreamDataBidiRemote;
this.initialMaxStreamDataUni = builder.initialMaxStreamDataUni;
this.initialMaxStreamsBidi = builder.initialMaxStreamsBidi;
this.initialMaxStreamsUni = builder.initialMaxStreamsUni;
this.ackDelayExponent = builder.ackDelayExponent;
this.maxAckDelay = builder.maxAckDelay;
this.disableActiveMigration = builder.disableActiveMigration;
this.enableHystart = builder.enableHystart;
this.discoverPmtu = builder.discoverPmtu;
this.congestionControlAlgorithm = builder.congestionControlAlgorithm;
this.initialCongestionWindowPackets = builder.initialCongestionWindowPackets;
this.localConnIdLength = builder.localConnIdLength;
this.sslEngineProvider = builder.sslEngineProvider;
this.flushStrategy = builder.flushStrategy;
this.recvQueueLen = builder.recvQueueLen;
this.sendQueueLen = builder.sendQueueLen;
this.activeConnectionIdLimit = builder.activeConnectionIdLimit;
this.statelessResetToken = builder.statelessResetToken;
this.sslTaskExecutor = builder.sslTaskExecutor;
this.version = builder.version;
}
/**
* Returns itself.
*
* @return itself.
*/
@SuppressWarnings("unchecked")
protected final B self() {
return (B) this;
}
/**
Source
Frequently Asked Questions
What is the QuicCodecBuilder class?
QuicCodecBuilder is a class in the netty codebase, defined in codec-classes-quic/src/main/java/io/netty/handler/codec/quic/QuicCodecBuilder.java.
Where is QuicCodecBuilder defined?
QuicCodecBuilder is defined in codec-classes-quic/src/main/java/io/netty/handler/codec/quic/QuicCodecBuilder.java at line 34.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free