Example usage for org.apache.http.client.utils URLEncodedUtils parse

List of usage examples for org.apache.http.client.utils URLEncodedUtils parse

Introduction

In this page you can find the example usage for org.apache.http.client.utils URLEncodedUtils parse.

Prototype

public static List<NameValuePair> parse(final String s, final Charset charset) 

Source Link

Document

Returns a list of NameValuePair NameValuePairs as parsed from the given string using the given character encoding.

Usage

From source file:org.wikimedia.analytics.kraken.pageview.PageviewCanonical.java

/**
 * Enter one or more keys to search for, this list of keys is
 * interpreted as key1 or key2; this function is not intended
 * to retrieve the values of multiple keys. In that case,
 * call this function multiple times.//from   w ww  .j a  v  a2s .  c  o m
 * @param keys
 * @return
 */
private String searchQueryAction(final String[] keys) {
    try {
        URL pURL = fixApacheHttpComponentBug(url);

        List<NameValuePair> qparams = URLEncodedUtils.parse(pURL.toURI(), "utf-8");
        ListIterator<NameValuePair> it = qparams.listIterator();
        while (it.hasNext()) {
            NameValuePair nvp = it.next();
            for (String key : keys) {
                if (nvp.getName().equals(key)) {
                    return nvp.getValue();
                }
            }
        }
    } catch (URISyntaxException e) {
        return "key.not.found";
    } catch (MalformedURLException e) {
        return "malformed.url";
    }
    return "key.not.found";
}

From source file:com.bazaarvoice.seo.sdk.util.BVUtilty.java

public static String removeBVQuery(String queryUrl) {

    final URI uri;
    try {/*from  ww  w  .j  a v a2 s.  co m*/
        uri = new URI(queryUrl);
    } catch (URISyntaxException e) {
        return queryUrl;
    }

    try {
        String newQuery = null;
        if (uri.getQuery() != null && uri.getQuery().length() > 0) {
            List<NameValuePair> newParameters = new ArrayList<NameValuePair>();
            List<NameValuePair> parameters = URLEncodedUtils.parse(uri.getQuery(), Charset.forName("UTF-8"));
            List<String> bvParameters = Arrays.asList("bvrrp", "bvsyp", "bvqap", "bvpage");
            for (NameValuePair parameter : parameters) {
                if (!bvParameters.contains(parameter.getName())) {
                    newParameters.add(parameter);
                }
            }
            newQuery = newParameters.size() > 0
                    ? URLEncodedUtils.format(newParameters, Charset.forName("UTF-8"))
                    : null;

        }
        return new URI(uri.getScheme(), uri.getAuthority(), uri.getPath(), newQuery, null).toString();
    } catch (URISyntaxException e) {
        return queryUrl;
    }
}

From source file:org.activiti.app.service.editor.ActivitiModelQueryService.java

public ResultListDataRepresentation getModels(String filter, String sort, Integer modelType,
        HttpServletRequest request) {/*from   w  w  w  .ja v  a 2  s . c o  m*/

    // need to parse the filterText parameter ourselves, due to encoding issues with the default parsing.
    String filterText = null;
    List<NameValuePair> params = URLEncodedUtils.parse(request.getQueryString(), Charset.forName("UTF-8"));
    if (params != null) {
        for (NameValuePair nameValuePair : params) {
            if ("filterText".equalsIgnoreCase(nameValuePair.getName())) {
                filterText = nameValuePair.getValue();
            }
        }
    }

    List<ModelRepresentation> resultList = new ArrayList<ModelRepresentation>();
    List<Model> models = null;

    String validFilter = makeValidFilterText(filterText);

    User user = SecurityUtils.getCurrentUserObject();

    if (validFilter != null) {
        models = modelRepository.findByModelTypeAndCreatedBy(user.getId(), modelType, validFilter, sort);

    } else {
        models = modelRepository.findByModelTypeAndCreatedBy(user.getId(), modelType, sort);
    }

    if (CollectionUtils.isNotEmpty(models)) {
        List<String> addedModelIds = new ArrayList<String>();
        for (Model model : models) {
            if (addedModelIds.contains(model.getId()) == false) {
                addedModelIds.add(model.getId());
                ModelRepresentation representation = createModelRepresentation(model);
                resultList.add(representation);
            }
        }
    }

    ResultListDataRepresentation result = new ResultListDataRepresentation(resultList);
    return result;
}

From source file:org.apache.ambari.server.api.services.LocalUriInfo.java

@Override
public MultivaluedMap<String, String> getQueryParameters() {
    List<NameValuePair> parametersList = URLEncodedUtils.parse(uri, "UTF-8");

    MultivaluedMap<String, String> parameters = new MultivaluedMapImpl();
    for (NameValuePair pair : parametersList) {
        parameters.add(pair.getName(), pair.getValue());
    }/*w ww . ja v  a  2 s  .  co  m*/
    return parameters;
}

From source file:org.apache.solr.client.solrj.io.sql.DriverImpl.java

private void loadParams(URI uri, Properties props) throws SQLException {
    List<NameValuePair> parsedParams = URLEncodedUtils.parse(uri, "UTF-8");
    for (NameValuePair pair : parsedParams) {
        if (pair.getValue() != null) {
            props.put(pair.getName(), pair.getValue());
        } else {//from  ww  w . j ava2 s  .  co m
            props.put(pair.getName(), "");
        }
    }
}

From source file:com.couchbase.CBConnection.java

public CBConnection(String url, Properties props) throws SQLException {
    try {//from   ww  w .j a va  2 s . co  m
        String connectionURL;

        if (props.containsKey(ConnectionParameters.ENABLE_SSL)
                && props.getProperty(ConnectionParameters.ENABLE_SSL).equals("true")) {
            logger.trace("Enabling SSL connection");
            connectionURL = HTTPS + url.substring(14);

        } else {
            logger.trace("Normal http connection");
            connectionURL = HTTP + url.substring(14);
        }

        List<NameValuePair> parameters = URLEncodedUtils.parse(new URI(connectionURL), "UTF-8");

        for (NameValuePair param : parameters) {
            props.put(param.getName(), param.getValue());
        }
        protocol = new ProtocolImpl(connectionURL, props);
        protocol.connect();
        connected.set(true);
    } catch (Exception ex) {
        logger.error("Error opening connection for {} exception {}", url, ex.getMessage());
        throw new SQLException("Error opening connection", ex.getCause());
    }
}

From source file:org.zanata.page.DswidParamChecker.java

private Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
    if (insideInvoke) {
        return null;
    }//  www.  j av  a  2s .  co m
    insideInvoke = true;
    try {
        String url = driver.getCurrentUrl();
        String query = new URL(url).getQuery();
        Optional<String> dswid;
        if (query == null) {
            dswid = Optional.empty();
        } else {
            dswid = URLEncodedUtils.parse(query, UTF_8).stream().filter(p -> p.getName().equals("dswid"))
                    .map(NameValuePair::getValue).findFirst();
        }
        if (checkingDswids && oldDswid != null) {
            assert oldUrl != null;
            if (!dswid.isPresent()) {
                String msg = "missing dswid on transition from " + oldUrl + " to " + url;
                //                    throw new AssertionError(msg);
                log.warn(msg);
            } else {
                if (!oldDswid.equals(dswid.get())) {
                    throw new AssertionError("changed dswid on transition from " + oldUrl + " to " + url);
                }
            }
        }
        oldDswid = dswid.orElse(null);
        oldUrl = url;
        return null;
    } catch (MalformedURLException e) {
        // just ignore this URL entirely
        return null;
    } finally {
        insideInvoke = false;
    }
}

From source file:feign.httpclient.ApacheHttpClient.java

HttpUriRequest toHttpUriRequest(Request request, Request.Options options)
        throws UnsupportedEncodingException, MalformedURLException, URISyntaxException {
    RequestBuilder requestBuilder = RequestBuilder.create(request.method());

    //per request timeouts
    RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(options.connectTimeoutMillis())
            .setSocketTimeout(options.readTimeoutMillis()).build();
    requestBuilder.setConfig(requestConfig);

    URI uri = new URIBuilder(request.url()).build();

    requestBuilder.setUri(uri.getScheme() + "://" + uri.getAuthority() + uri.getRawPath());

    //request query params
    List<NameValuePair> queryParams = URLEncodedUtils.parse(uri, requestBuilder.getCharset().name());
    for (NameValuePair queryParam : queryParams) {
        requestBuilder.addParameter(queryParam);
    }//w w  w. j ava2  s.c  om

    //request headers
    boolean hasAcceptHeader = false;
    for (Map.Entry<String, Collection<String>> headerEntry : request.headers().entrySet()) {
        String headerName = headerEntry.getKey();
        if (headerName.equalsIgnoreCase(ACCEPT_HEADER_NAME)) {
            hasAcceptHeader = true;
        }

        if (headerName.equalsIgnoreCase(Util.CONTENT_LENGTH)) {
            // The 'Content-Length' header is always set by the Apache client and it
            // doesn't like us to set it as well.
            continue;
        }

        for (String headerValue : headerEntry.getValue()) {
            requestBuilder.addHeader(headerName, headerValue);
        }
    }
    //some servers choke on the default accept string, so we'll set it to anything
    if (!hasAcceptHeader) {
        requestBuilder.addHeader(ACCEPT_HEADER_NAME, "*/*");
    }

    //request body
    if (request.body() != null) {
        HttpEntity entity = null;
        if (request.charset() != null) {
            ContentType contentType = getContentType(request);
            String content = new String(request.body(), request.charset());
            entity = new StringEntity(content, contentType);
        } else {
            entity = new ByteArrayEntity(request.body());
        }

        requestBuilder.setEntity(entity);
    }

    return requestBuilder.build();
}