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();
}
}
Source
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