in client/src/main/java/org/apache/ahc/util/ParameterParser.java [200:227]
public List<NameValuePair> parse(final char[] chars, int offset, int length, char separator) {
if (chars == null) {
return new ArrayList<NameValuePair>();
}
List<NameValuePair> params = new ArrayList<NameValuePair>();
this.chars = chars;
this.pos = offset;
this.len = length;
String paramName = null;
String paramValue = null;
while (hasChar()) {
paramName = parseToken(new char[] {'=', separator});
paramValue = null;
if (hasChar() && (chars[pos] == '=')) {
pos++; // skip '='
paramValue = parseQuotedToken(new char[] {separator});
}
if (hasChar() && (chars[pos] == separator)) {
pos++; // skip separator
}
if (paramName != null && !(paramName.equals("") && paramValue == null)) {
params.add(new NameValuePair(paramName, paramValue));
}
}
return params;
}