Home / Class/ SecureRandomQuicConnectionIdGenerator Class — netty Architecture

SecureRandomQuicConnectionIdGenerator Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  542ccc02_ab4f_74d6_dc7a_23f38f970e58["SecureRandomQuicConnectionIdGenerator"]
  5a687915_c37c_1ba4_7383_16531aa635df["SecureRandomQuicConnectionIdGenerator.java"]
  542ccc02_ab4f_74d6_dc7a_23f38f970e58 -->|defined in| 5a687915_c37c_1ba4_7383_16531aa635df
  7ad5ed2d_4683_902d_c0bb_0d856e4ac4bc["SecureRandomQuicConnectionIdGenerator()"]
  542ccc02_ab4f_74d6_dc7a_23f38f970e58 -->|method| 7ad5ed2d_4683_902d_c0bb_0d856e4ac4bc
  80da4806_4c28_85d7_6e2f_1b9637723df3["ByteBuffer()"]
  542ccc02_ab4f_74d6_dc7a_23f38f970e58 -->|method| 80da4806_4c28_85d7_6e2f_1b9637723df3
  56644b74_9b0c_e489_0c70_36eb4a24e648["maxConnectionIdLength()"]
  542ccc02_ab4f_74d6_dc7a_23f38f970e58 -->|method| 56644b74_9b0c_e489_0c70_36eb4a24e648
  a936c90e_7e49_f00f_fb6e_f13732df9f1e["isIdempotent()"]
  542ccc02_ab4f_74d6_dc7a_23f38f970e58 -->|method| a936c90e_7e49_f00f_fb6e_f13732df9f1e

Relationship Graph

Source Code

codec-classes-quic/src/main/java/io/netty/handler/codec/quic/SecureRandomQuicConnectionIdGenerator.java lines 23–53

final class SecureRandomQuicConnectionIdGenerator implements QuicConnectionIdGenerator {
    private static final SecureRandom RANDOM = new SecureRandom();

    static final QuicConnectionIdGenerator INSTANCE = new SecureRandomQuicConnectionIdGenerator();

    private SecureRandomQuicConnectionIdGenerator() {
    }

    @Override
    public ByteBuffer newId(int length) {
        ObjectUtil.checkInRange(length, 0, maxConnectionIdLength(), "length");
        byte[] bytes = new byte[length];
        RANDOM.nextBytes(bytes);
        return ByteBuffer.wrap(bytes);
    }

    @Override
    public ByteBuffer newId(ByteBuffer buffer, int length) {
        return newId(length);
    }

    @Override
    public int maxConnectionIdLength() {
        return Quiche.QUICHE_MAX_CONN_ID_LEN;
    }

    @Override
    public boolean isIdempotent() {
        return false;
    }
}

Frequently Asked Questions

What is the SecureRandomQuicConnectionIdGenerator class?
SecureRandomQuicConnectionIdGenerator is a class in the netty codebase, defined in codec-classes-quic/src/main/java/io/netty/handler/codec/quic/SecureRandomQuicConnectionIdGenerator.java.
Where is SecureRandomQuicConnectionIdGenerator defined?
SecureRandomQuicConnectionIdGenerator is defined in codec-classes-quic/src/main/java/io/netty/handler/codec/quic/SecureRandomQuicConnectionIdGenerator.java at line 23.

Analyze Your Own Codebase

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

Try Supermodel Free