@Override public NameValuePair[] parseParameters(final CharSequence buffer, final ParserCursor cursor) { Args.notNull(buffer, "Char sequence"); Args.notNull(cursor, "Parser cursor"); tokenParser.skipWhiteSpace(buffer, cursor); final List<NameValuePair> params = new ArrayList<>(); 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()]); }
@Override public NameValuePair[] parseParameters(final CharSequence buffer, final ParserCursor cursor) { Args.notNull(buffer, "Char sequence"); Args.notNull(cursor, "Parser cursor"); tokenParser.skipWhiteSpace(buffer, cursor); final List<NameValuePair> params = new ArrayList<>(); 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()]); }
@Override public HeaderElement parseHeaderElement(final CharSequence buffer, final ParserCursor cursor) { Args.notNull(buffer, "Char sequence"); Args.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); } } return new BasicHeaderElement(nvp.getName(), nvp.getValue(), params); }
@Override public HeaderElement parseHeaderElement(final CharSequence buffer, final ParserCursor cursor) { Args.notNull(buffer, "Char sequence"); Args.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); } } return new BasicHeaderElement(nvp.getName(), nvp.getValue(), params); }
NameValuePair param = this.parser.parseNameValuePair(buffer, cursor); Assert.assertEquals("test", param.getName()); Assert.assertEquals(null, param.getValue()); param = this.parser.parseNameValuePair(buffer, cursor); Assert.assertEquals("test", param.getName()); Assert.assertEquals(null, param.getValue()); param = this.parser.parseNameValuePair(buffer, cursor); Assert.assertEquals("test", param.getName()); Assert.assertEquals(null, param.getValue()); param = this.parser.parseNameValuePair(buffer, cursor); Assert.assertEquals("test", param.getName()); Assert.assertEquals("stuff", param.getValue()); param = this.parser.parseNameValuePair(buffer, cursor); Assert.assertEquals("test", param.getName()); Assert.assertEquals("stuff", param.getValue()); param = this.parser.parseNameValuePair(buffer, cursor); Assert.assertEquals("test", param.getName()); Assert.assertEquals("stuff", param.getValue()); param = this.parser.parseNameValuePair(buffer, cursor); Assert.assertEquals("test", param.getName()); Assert.assertEquals("stuff", param.getValue()); param = this.parser.parseNameValuePair(buffer, cursor);