Home / Class/ ThreadLocalInsecureRandom Class — netty Architecture

ThreadLocalInsecureRandom Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07["ThreadLocalInsecureRandom"]
  9f980afd_d1c1_cd2d_6f37_a8b670bccecf["ThreadLocalInsecureRandom.java"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|defined in| 9f980afd_d1c1_cd2d_6f37_a8b670bccecf
  63bb149a_d872_0388_85e4_9aa91ca3c490["SecureRandom()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 63bb149a_d872_0388_85e4_9aa91ca3c490
  ec646054_587d_649a_8f6b_98d1c559523a["ThreadLocalInsecureRandom()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| ec646054_587d_649a_8f6b_98d1c559523a
  d66c8230_6b83_1c9e_0dae_2471bfc6a753["String()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| d66c8230_6b83_1c9e_0dae_2471bfc6a753
  270e342a_8b4e_e77a_ad98_fe125b1aca3a["setSeed()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 270e342a_8b4e_e77a_ad98_fe125b1aca3a
  e30578ba_a117_7626_8a52_659621359683["nextBytes()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| e30578ba_a117_7626_8a52_659621359683
  07a70cdb_fd93_6688_18e7_0f2016810da5["generateSeed()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 07a70cdb_fd93_6688_18e7_0f2016810da5
  d535cdf8_7eea_f955_e2f0_8d93d8ec1708["nextInt()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| d535cdf8_7eea_f955_e2f0_8d93d8ec1708
  43f97a87_7770_1bb2_06ea_43b591441515["nextBoolean()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 43f97a87_7770_1bb2_06ea_43b591441515
  62c602b5_e39b_cc1a_529c_23c156d690cc["nextLong()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 62c602b5_e39b_cc1a_529c_23c156d690cc
  432124ef_6004_3cb5_8eb1_c79d31e20b46["nextFloat()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 432124ef_6004_3cb5_8eb1_c79d31e20b46
  3c6bedfb_7944_b9e9_a91c_8bf7dc25a969["nextDouble()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 3c6bedfb_7944_b9e9_a91c_8bf7dc25a969
  932d664f_3e52_8e59_988b_f9520c28b932["nextGaussian()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 932d664f_3e52_8e59_988b_f9520c28b932
  59784750_debd_e638_2479_08837c8cdd29["Random()"]
  f65f907f_f1d1_95e9_7c41_5d9dc2263c07 -->|method| 59784750_debd_e638_2479_08837c8cdd29

Relationship Graph

Source Code

handler/src/main/java/io/netty/handler/ssl/util/ThreadLocalInsecureRandom.java lines 29–102

final class ThreadLocalInsecureRandom extends SecureRandom {

    private static final long serialVersionUID = -8209473337192526191L;

    private static final SecureRandom INSTANCE = new ThreadLocalInsecureRandom();

    static SecureRandom current() {
        return INSTANCE;
    }

    private ThreadLocalInsecureRandom() { }

    @Override
    public String getAlgorithm() {
        return "insecure";
    }

    @Override
    public void setSeed(byte[] seed) { }

    @Override
    public void setSeed(long seed) { }

    @Override
    public void nextBytes(byte[] bytes) {
        random().nextBytes(bytes);
    }

    @Override
    public byte[] generateSeed(int numBytes) {
        byte[] seed = new byte[numBytes];
        random().nextBytes(seed);
        return seed;
    }

    @Override
    public int nextInt() {
        return random().nextInt();
    }

    @Override
    public int nextInt(int n) {
        return random().nextInt(n);
    }

    @Override
    public boolean nextBoolean() {
        return random().nextBoolean();
    }

    @Override
    public long nextLong() {
        return random().nextLong();
    }

    @Override
    public float nextFloat() {
        return random().nextFloat();
    }

    @Override
    public double nextDouble() {
        return random().nextDouble();
    }

    @Override
    public double nextGaussian() {
        return random().nextGaussian();
    }

    private static Random random() {
        return ThreadLocalRandom.current();
    }
}

Frequently Asked Questions

What is the ThreadLocalInsecureRandom class?
ThreadLocalInsecureRandom is a class in the netty codebase, defined in handler/src/main/java/io/netty/handler/ssl/util/ThreadLocalInsecureRandom.java.
Where is ThreadLocalInsecureRandom defined?
ThreadLocalInsecureRandom is defined in handler/src/main/java/io/netty/handler/ssl/util/ThreadLocalInsecureRandom.java at line 29.

Analyze Your Own Codebase

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

Try Supermodel Free