List of usage examples for org.apache.http.message ParserCursor atEnd
public boolean atEnd()
From source file:com.mcxiaoke.next.http.entity.BasicHeaderValueParser.java
public HeaderElement[] parseElements(final CharArrayBuffer buffer, final ParserCursor cursor) { AssertUtils.notNull(buffer, "Char array buffer"); AssertUtils.notNull(cursor, "Parser cursor"); final List<HeaderElement> elements = new ArrayList<HeaderElement>(); while (!cursor.atEnd()) { final HeaderElement element = parseHeaderElement(buffer, cursor); if (!(element.getName().length() == 0 && element.getValue() == null)) { elements.add(element);/*www . ja v a 2 s . c om*/ } } return elements.toArray(new HeaderElement[elements.size()]); }
From source file:com.mcxiaoke.next.http.entity.BasicHeaderValueParser.java
public HeaderElement parseHeaderElement(final CharArrayBuffer buffer, final ParserCursor cursor) { AssertUtils.notNull(buffer, "Char array buffer"); AssertUtils.notNull(cursor, "Parser cursor"); final NameValuePair nvp = parseNameValuePair(buffer, cursor); NameValuePair[] params = null; if (!cursor.atEnd()) { final char ch = buffer.charAt(cursor.getPos() - 1); if (ch != ELEM_DELIMITER) { params = parseParameters(buffer, cursor); }/* w ww . j a va 2s .co m*/ } return createHeaderElement(nvp.getName(), nvp.getValue(), params); }
From source file:com.mcxiaoke.next.http.entity.BasicHeaderValueParser.java
public NameValuePair[] parseParameters(final CharArrayBuffer buffer, final ParserCursor cursor) { AssertUtils.notNull(buffer, "Char array buffer"); AssertUtils.notNull(cursor, "Parser cursor"); int pos = cursor.getPos(); final int indexTo = cursor.getUpperBound(); while (pos < indexTo) { final char ch = buffer.charAt(pos); if (HTTP.isWhitespace(ch)) { pos++;//w w w .ja va 2s .c o m } else { break; } } cursor.updatePos(pos); if (cursor.atEnd()) { return new NameValuePair[] {}; } final List<NameValuePair> params = new ArrayList<NameValuePair>(); while (!cursor.atEnd()) { final NameValuePair param = parseNameValuePair(buffer, cursor); params.add(param); final char ch = buffer.charAt(cursor.getPos() - 1); if (ch == ELEM_DELIMITER) { break; } } return params.toArray(new NameValuePair[params.size()]); }