Package org.apache.hc.core5.http.message
Class BasicListHeaderIterator
java.lang.Object
org.apache.hc.core5.http.message.BasicListHeaderIterator
- Since:
- 4.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionA list of headers to iterate over.private int
The position of the next header inallHeaders
.private final String
The header name to filter by.private int
The position of the last returned header. -
Constructor Summary
ConstructorsConstructorDescriptionBasicListHeaderIterator
(List<Header> headers, String name) Creates a new header iterator. -
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
filterHeader
(int index) Checks whether a header is part of the iteration.protected int
findNext
(int pos) Determines the index of the next header.boolean
hasNext()
next()
Obtains the next header from this iteration.void
remove()
Removes the header that was returned last.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Iterator
forEachRemaining
-
Field Details
-
allHeaders
A list of headers to iterate over. Not all elements of this array are necessarily part of the iteration. -
currentIndex
private int currentIndexThe position of the next header inallHeaders
. Negative if the iteration is over. -
lastIndex
private int lastIndexThe position of the last returned header. Negative if none has been returned so far. -
headerName
The header name to filter by.null
to iterate over all headers in the array.
-
-
Constructor Details
-
BasicListHeaderIterator
Creates a new header iterator.- Parameters:
headers
- a list of headers over which to iteratename
- the name of the headers over which to iterate, ornull
for any
-
-
Method Details
-
findNext
protected int findNext(int pos) Determines the index of the next header.- Parameters:
pos
- one less than the index to consider first, -1 to search for the first header- Returns:
- the index of the next header that matches the filter name, or negative if there are no more headers
-
filterHeader
private boolean filterHeader(int index) Checks whether a header is part of the iteration.- Parameters:
index
- the index of the header to check- Returns:
true
if the header should be part of the iteration,false
to skip
-
hasNext
public boolean hasNext() -
next
Obtains the next header from this iteration.- Specified by:
next
in interfaceIterator<Header>
- Returns:
- the next header in this iteration
- Throws:
NoSuchElementException
- if there are no more headers
-
remove
Removes the header that was returned last.- Specified by:
remove
in interfaceIterator<Header>
- Throws:
UnsupportedOperationException
-