Example usage for org.apache.http.client.utils URIBuilder build

List of usage examples for org.apache.http.client.utils URIBuilder build

Introduction

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

Prototype

public URI build() throws URISyntaxException 

Source Link

Document

Builds a URI instance.

Usage

From source file:com.msopentech.odatajclient.engine.uri.AbstractURIBuilder.java

@Override
public URI build() {
    final StringBuilder segmentsBuilder = new StringBuilder();
    for (URIBuilder.Segment seg : segments) {
        if (segmentsBuilder.length() > 0 && seg.getType() != SegmentType.KEY) {
            segmentsBuilder.append('/');
        }/*w  w  w.ja v a  2s. co m*/

        segmentsBuilder.append(seg.getValue());
    }

    try {
        final org.apache.http.client.utils.URIBuilder builder = new org.apache.http.client.utils.URIBuilder(
                segmentsBuilder.toString());

        for (Map.Entry<String, String> option : queryOptions.entrySet()) {
            builder.addParameter("$" + option.getKey(), option.getValue());
        }

        return builder.build().normalize();
    } catch (URISyntaxException e) {
        throw new IllegalArgumentException("Could not build valid URI", e);
    }
}

From source file:org.qucosa.camel.component.fcrepo3.Fcrepo3APIAccess.java

public void modifyDatastream(String pid, String dsid, Boolean versionable, InputStream content)
        throws IOException {
    HttpResponse response = null;//  www.j a v  a2 s  .co m
    try {
        BasicHttpEntity entity = new BasicHttpEntity();
        entity.setContent(content);
        // Entity needs to be buffered because Fedora might reply in a way
        // forces resubmitting the entity
        BufferedHttpEntity bufferedHttpEntity = new BufferedHttpEntity(entity);

        URIBuilder uriBuilder = new URIBuilder(
                format(FEDORA_DATASTREAM_MODIFICATION_URI_PATTERN, host, port, pid, dsid));
        if (versionable != null) {
            uriBuilder.addParameter("versionable", String.valueOf(versionable));
        }
        URI uri = uriBuilder.build();

        HttpPut put = new HttpPut(uri);
        put.setEntity(bufferedHttpEntity);
        response = httpClient.execute(put);

        if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) {
            throw new IOException(format("Cannot modify datastream %s of object %s. Server responded: %s", dsid,
                    pid, response.getStatusLine()));
        }
    } catch (URISyntaxException e) {
        throw new IOException("Cannot ", e);
    } finally {
        consumeResponseEntity(response);
    }
}

From source file:com.collective.celos.CelosClient.java

/**
 * Deletes the specified register value.
 *///from  ww w.  j  a v  a 2 s. com
public void deleteRegister(BucketID bucket, RegisterKey key) throws Exception {
    URIBuilder uriBuilder = new URIBuilder(address);
    uriBuilder.setPath(uriBuilder.getPath() + REGISTER_PATH);
    uriBuilder.addParameter(BUCKET_PARAM, bucket.toString());
    uriBuilder.addParameter(KEY_PARAM, key.toString());
    executeDelete(uriBuilder.build());
}

From source file:org.apache.streams.riak.http.RiakHttpPersistWriter.java

@Override
public void write(StreamsDatum entry) {

    Objects.nonNull(client);//from   www. j av a2  s. c  o m

    String id = null;
    String document;
    String bucket;
    String bucketType;
    String contentType;
    String charset;
    if (StringUtils.isNotBlank(entry.getId())) {
        id = entry.getId();
    }
    if (entry.getDocument() instanceof String) {
        document = (String) entry.getDocument();
    } else {
        try {
            document = MAPPER.writeValueAsString(entry.getDocument());
        } catch (Exception e) {
            LOGGER.warn("Exception", e);
            return;
        }
    }
    if (entry.getMetadata() != null && entry.getMetadata().containsKey("bucket")
            && entry.getMetadata().get("bucket") instanceof String
            && StringUtils.isNotBlank((String) entry.getMetadata().get("bucket"))) {
        bucket = (String) entry.getMetadata().get("bucket");
    } else {
        bucket = configuration.getDefaultBucket();
    }
    if (entry.getMetadata() != null && entry.getMetadata().containsKey("bucketType")
            && entry.getMetadata().get("bucketType") instanceof String
            && StringUtils.isNotBlank((String) entry.getMetadata().get("bucketType"))) {
        bucketType = (String) entry.getMetadata().get("bucketType");
    } else {
        bucketType = configuration.getDefaultBucketType();
    }
    if (entry.getMetadata() != null && entry.getMetadata().containsKey("charset")
            && entry.getMetadata().get("charset") instanceof String
            && StringUtils.isNotBlank((String) entry.getMetadata().get("charset"))) {
        charset = (String) entry.getMetadata().get("charset");
    } else {
        charset = configuration.getDefaultCharset();
    }
    if (entry.getMetadata() != null && entry.getMetadata().containsKey("contentType")
            && entry.getMetadata().get("contentType") instanceof String
            && StringUtils.isNotBlank((String) entry.getMetadata().get("contentType"))) {
        contentType = (String) entry.getMetadata().get("contentType");
    } else {
        contentType = configuration.getDefaultContentType();
    }

    URIBuilder uriBuilder = new URIBuilder(client.baseURI);
    if (bucket != null && StringUtils.isNotBlank(bucket)) {
        uriBuilder.setPath("/riak/" + bucket);
    }
    if (id != null && StringUtils.isNotBlank(id)) {
        uriBuilder.setPath("/riak/" + bucket + "/" + id);
    }

    URI uri;
    try {
        uri = uriBuilder.build();
    } catch (URISyntaxException e) {
        LOGGER.warn("URISyntaxException", e);
        return;
    }

    HttpPost post = new HttpPost();
    post.setHeader("Content-Type", contentType + "; charset=" + charset);
    post.setURI(uri);
    HttpEntity entity;
    try {
        entity = new StringEntity(document);
        post.setEntity(entity);
    } catch (UnsupportedEncodingException e) {
        LOGGER.warn("UnsupportedEncodingException", e);
        return;
    }

    try {
        HttpResponse response = client.client().execute(post);
    } catch (IOException e) {
        LOGGER.warn("IOException", e);
        return;
    }

}

From source file:com.intellij.translation.translator.YoudaoTranslator.java

@NotNull
@Override/*w w w  .  ja v  a 2 s .  c om*/
public URI createUrl(String query) throws URISyntaxException {
    URIBuilder builder = new URIBuilder();
    builder.setScheme("http").setHost("fanyi.youdao.com").setPath("/openapi.do")
            .addParameter("keyfrom", TranslationSettings.getInstance().getYoudaoKeyfrom())
            .addParameter("key", TranslationSettings.getInstance().getYoudaoApiKey())
            .addParameter("type", "data").addParameter("version", "1.1").addParameter("doctype", "json")
            .addParameter("q", query);
    return builder.build();
}

From source file:de.dentrassi.pm.jenkins.UploaderV3.java

@Override
public boolean complete() {
    if (this.failed) {
        return false;
    }//from  w w w  . j av  a  2 s .  co  m

    try {
        closeTransfer();

        final URIBuilder uri = new URIBuilder(String.format("%s/api/v3/upload/archive/channel/%s",
                this.serverUrl, URIUtil.encodeWithinPath(this.channelId)));

        this.listener.getLogger().println("API endpoint: " + uri.build().toString());

        final HttpPut httppost = new HttpPut(uri.build());

        final String encodedAuth = Base64
                .encodeBase64String(("deploy:" + this.deployKey).getBytes("ISO-8859-1"));
        httppost.setHeader(HttpHeaders.AUTHORIZATION, "Basic " + encodedAuth);

        final InputStream stream = new FileInputStream(this.tempFile);
        try {
            httppost.setEntity(new InputStreamEntity(stream, this.tempFile.length()));

            final HttpResponse response = this.client.execute(httppost);
            final HttpEntity resEntity = response.getEntity();

            this.listener.getLogger().println("Call returned: " + response.getStatusLine());

            if (resEntity != null) {
                switch (response.getStatusLine().getStatusCode()) {
                case 200:
                    processUploadResult(makeString(resEntity));
                    return true;
                case 404:
                    this.listener.error(
                            "Failed to find upload endpoint V3. This could mean that you configured a wrong server URL or that the server does not support the Upload V3. You will need a version 0.14+ of Eclipse Package Drone. It could also mean that you did use wrong credentials.");
                    return false;
                default:
                    if (!handleError(response)) {
                        addErrorMessage("Failed to upload: " + response.getStatusLine());
                    }
                    return false;
                }
            }

            addErrorMessage("Did not receive a result");

            return false;
        } finally {
            stream.close();
        }
    } catch (final Exception e) {
        e.printStackTrace(this.listener.error("Failed to perform archive upload"));
        return false;
    }
}

From source file:net.datacrow.onlinesearch.discogs.task.DiscogsMusicSearch.java

@Override
protected Collection<Object> getItemKeys() throws Exception {
    HttpClient httpClient = getHttpClient();

    List<NameValuePair> queryParams = new ArrayList<NameValuePair>();
    queryParams.add(new BasicNameValuePair("q", getQuery()));

    URIBuilder builder = new URIBuilder();
    builder.setScheme("http");
    builder.setHost("api.discogs.com");
    builder.setPath("/database/search");
    builder.setQuery(URLEncodedUtils.format(queryParams, "UTF-8"));
    URI uri = builder.build();
    HttpGet httpGet = new HttpGet(uri);

    HttpOAuthHelper au = new HttpOAuthHelper("application/json");
    au.handleRequest(httpGet, _CONSUMER_KEY, _CONSUMER_SECRET, null, queryParams);

    HttpResponse httpResponse = httpClient.execute(httpGet);
    String response = getReponseText(httpResponse);

    httpClient.getConnectionManager().shutdown();

    Collection<Object> keys = new ArrayList<Object>();

    int counter = 0;
    for (String key : StringUtils.getValuesBetween("\"id\":", "}", response)) {
        keys.add(key.trim());/*ww w  . j  av a  2 s.  c o m*/

        if (counter++ >= maxQuerySize)
            break;
    }
    return keys;
}

From source file:com.collective.celos.CelosClient.java

public void kill(WorkflowID workflowID, ScheduledTime scheduledTime) throws Exception {
    URIBuilder uriBuilder = new URIBuilder(address);
    uriBuilder.setPath(uriBuilder.getPath() + KILL_PATH);
    uriBuilder.addParameter(ID_PARAM, workflowID.toString());
    uriBuilder.addParameter(TIME_PARAM, scheduledTime.toString());
    executePost(uriBuilder.build());
}

From source file:com.collective.celos.CelosClient.java

public void rerunSlot(WorkflowID workflowID, ScheduledTime scheduledTime) throws Exception {
    URIBuilder uriBuilder = new URIBuilder(address);
    uriBuilder.setPath(uriBuilder.getPath() + RERUN_PATH);
    uriBuilder.addParameter(ID_PARAM, workflowID.toString());
    uriBuilder.addParameter(TIME_PARAM, scheduledTime.toString());
    executePost(uriBuilder.build());
}