public List parse()

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;
    }