Package org.apache.hc.core5.http.message
Class BasicListHeaderIterator
- java.lang.Object
-
- org.apache.hc.core5.http.message.BasicListHeaderIterator
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<Header>allHeadersA list of headers to iterate over.private intcurrentIndexThe position of the next header inallHeaders.private java.lang.StringheaderNameThe header name to filter by.private intlastIndexThe position of the last returned header.
-
Constructor Summary
Constructors Constructor Description BasicListHeaderIterator(java.util.List<Header> headers, java.lang.String name)Creates a new header iterator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private booleanfilterHeader(int index)Checks whether a header is part of the iteration.protected intfindNext(int pos)Determines the index of the next header.booleanhasNext()Headernext()Obtains the next header from this iteration.voidremove()Removes the header that was returned last.
-
-
-
Field Detail
-
allHeaders
private final java.util.List<Header> allHeaders
A list of headers to iterate over. Not all elements of this array are necessarily part of the iteration.
-
currentIndex
private int currentIndex
The position of the next header inallHeaders. Negative if the iteration is over.
-
lastIndex
private int lastIndex
The position of the last returned header. Negative if none has been returned so far.
-
headerName
private final java.lang.String headerName
The header name to filter by.nullto iterate over all headers in the array.
-
-
Constructor Detail
-
BasicListHeaderIterator
public BasicListHeaderIterator(java.util.List<Header> headers, java.lang.String name)
Creates a new header iterator.- Parameters:
headers- a list of headers over which to iteratename- the name of the headers over which to iterate, ornullfor any
-
-
Method Detail
-
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:
trueif the header should be part of the iteration,falseto skip
-
hasNext
public boolean hasNext()
- Specified by:
hasNextin interfacejava.util.Iterator<Header>
-
next
public Header next() throws java.util.NoSuchElementException
Obtains the next header from this iteration.- Specified by:
nextin interfacejava.util.Iterator<Header>- Returns:
- the next header in this iteration
- Throws:
java.util.NoSuchElementException- if there are no more headers
-
remove
public void remove() throws java.lang.UnsupportedOperationExceptionRemoves the header that was returned last.- Specified by:
removein interfacejava.util.Iterator<Header>- Throws:
java.lang.UnsupportedOperationException
-
-