ReadOnlyValueIterator Class — netty Architecture
Architecture documentation for the ReadOnlyValueIterator class in ReadOnlyHttpHeaders.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 501fa18a_2e35_e063_a31f_c64a36c16cf7["ReadOnlyValueIterator"] 9c0d840a_0c24_0113_a05c_3a195f469a49["ReadOnlyHttpHeaders.java"] 501fa18a_2e35_e063_a31f_c64a36c16cf7 -->|defined in| 9c0d840a_0c24_0113_a05c_3a195f469a49 3ce38442_c0e4_42a2_2763_622b95438136["ReadOnlyValueIterator()"] 501fa18a_2e35_e063_a31f_c64a36c16cf7 -->|method| 3ce38442_c0e4_42a2_2763_622b95438136 7154b8dc_403d_5bc2_eb3d_740bc2b9b7df["hasNext()"] 501fa18a_2e35_e063_a31f_c64a36c16cf7 -->|method| 7154b8dc_403d_5bc2_eb3d_740bc2b9b7df e953f93a_6b0c_a0d9_f860_7bf476b6934d["CharSequence()"] 501fa18a_2e35_e063_a31f_c64a36c16cf7 -->|method| e953f93a_6b0c_a0d9_f860_7bf476b6934d 900d85c3_08c5_f5f4_60cb_b012a1f03d4b["remove()"] 501fa18a_2e35_e063_a31f_c64a36c16cf7 -->|method| 900d85c3_08c5_f5f4_60cb_b012a1f03d4b 4a042d21_590b_aff8_5cf0_503aaebbc8fa["findNextValue()"] 501fa18a_2e35_e063_a31f_c64a36c16cf7 -->|method| 4a042d21_590b_aff8_5cf0_503aaebbc8fa
Relationship Graph
Source Code
codec-http/src/main/java/io/netty/handler/codec/http/ReadOnlyHttpHeaders.java lines 418–458
private final class ReadOnlyValueIterator implements Iterator<CharSequence> {
private final CharSequence name;
private final int nameHash;
private int nextNameIndex;
ReadOnlyValueIterator(CharSequence name) {
this.name = name;
nameHash = AsciiString.hashCode(name);
nextNameIndex = findNextValue();
}
@Override
public boolean hasNext() {
return nextNameIndex != -1;
}
@Override
public CharSequence next() {
if (!hasNext()) {
throw new NoSuchElementException();
}
CharSequence value = nameValuePairs[nextNameIndex + 1];
nextNameIndex = findNextValue();
return value;
}
@Override
public void remove() {
throw new UnsupportedOperationException("read only");
}
private int findNextValue() {
for (int i = nextNameIndex; i < nameValuePairs.length; i += 2) {
final CharSequence roName = nameValuePairs[i];
if (nameHash == AsciiString.hashCode(roName) && contentEqualsIgnoreCase(name, roName)) {
return i;
}
}
return -1;
}
}
Source
Frequently Asked Questions
What is the ReadOnlyValueIterator class?
ReadOnlyValueIterator is a class in the netty codebase, defined in codec-http/src/main/java/io/netty/handler/codec/http/ReadOnlyHttpHeaders.java.
Where is ReadOnlyValueIterator defined?
ReadOnlyValueIterator is defined in codec-http/src/main/java/io/netty/handler/codec/http/ReadOnlyHttpHeaders.java at line 418.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free