QueryStringEncoderBenchmark Class — netty Architecture
Architecture documentation for the QueryStringEncoderBenchmark class in QueryStringEncoderBenchmark.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 5263319d_1de7_116b_4447_8de46529cd85["QueryStringEncoderBenchmark"] dc4cabbe_7f7c_64dd_def8_8ec62983d1e8["QueryStringEncoderBenchmark.java"] 5263319d_1de7_116b_4447_8de46529cd85 -->|defined in| dc4cabbe_7f7c_64dd_def8_8ec62983d1e8 ac998288_61b8_1569_cd3e_8044ecf26dcf["setUp()"] 5263319d_1de7_116b_4447_8de46529cd85 -->|method| ac998288_61b8_1569_cd3e_8044ecf26dcf 2b0b86ce_d855_8f02_6424_e12c500d2d2b["String()"] 5263319d_1de7_116b_4447_8de46529cd85 -->|method| 2b0b86ce_d855_8f02_6424_e12c500d2d2b
Relationship Graph
Source Code
microbench/src/main/java/io/netty/handler/codec/http/QueryStringEncoderBenchmark.java lines 28–95
@Threads(1)
@Warmup(iterations = 3)
@Measurement(iterations = 3)
@OutputTimeUnit(TimeUnit.MICROSECONDS)
public class QueryStringEncoderBenchmark extends AbstractMicrobenchmark {
private String shortAscii;
private String shortUtf8;
private String shortAsciiFirst;
private String longAscii;
private String longUtf8;
private String longAsciiFirst;
@Setup
public void setUp() {
// Avoid constant pool for strings since it's common for at least values to not be constant.
shortAscii = new String("foo".toCharArray());
shortUtf8 = new String("ほげほげ".toCharArray());
shortAsciiFirst = shortAscii + shortUtf8;
longAscii = repeat(shortAscii, 100);
longUtf8 = repeat(shortUtf8, 100);
longAsciiFirst = longAscii + longUtf8;
}
@Benchmark
public String shortAscii() {
return encode(shortAscii);
}
@Benchmark
public String shortUtf8() {
return encode(shortUtf8);
}
@Benchmark
public String shortAsciiFirst() {
return encode(shortAsciiFirst);
}
@Benchmark
public String longAscii() {
return encode(longAscii);
}
@Benchmark
public String longUtf8() {
return encode(longUtf8);
}
@Benchmark
public String longAsciiFirst() {
return encode(longAsciiFirst);
}
private static String encode(String s) {
QueryStringEncoder encoder = new QueryStringEncoder("");
encoder.addParam(s, s);
return encoder.toString();
}
private static String repeat(String s, int num) {
StringBuilder sb = new StringBuilder(num * s.length());
for (int i = 0; i < num; i++) {
sb.append(s);
}
return sb.toString();
}
}
Source
Frequently Asked Questions
What is the QueryStringEncoderBenchmark class?
QueryStringEncoderBenchmark is a class in the netty codebase, defined in microbench/src/main/java/io/netty/handler/codec/http/QueryStringEncoderBenchmark.java.
Where is QueryStringEncoderBenchmark defined?
QueryStringEncoderBenchmark is defined in microbench/src/main/java/io/netty/handler/codec/http/QueryStringEncoderBenchmark.java at line 28.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free