Example usage for org.apache.http.client.methods HttpUriRequest getURI

List of usage examples for org.apache.http.client.methods HttpUriRequest getURI

Introduction

In this page you can find the example usage for org.apache.http.client.methods HttpUriRequest getURI.

Prototype

URI getURI();

Source Link

Document

Returns the URI this request uses, such as <code>http://example.org/path/to/file</code>.

Usage

From source file:com.enjoy.nerd.http.AsyncHttpClient.java

/**
 * Puts a new request in queue as a new thread in pool to be executed
 *
 * @param client          HttpClient to be used for request, can differ in single requests
 * @param contentType     MIME body type, for POST and PUT requests, may be null
 * @param context         Context of Android application, to hold the reference of request
 * @param httpContext     HttpContext in which the request will be executed
 * @param responseHandler ResponseHandler or its subclass to put the response into
 * @param uriRequest      instance of HttpUriRequest, which means it must be of HttpDelete,
 *                        HttpPost, HttpGet, HttpPut, etc.
 * @return RequestHandle of future request process
 *///from w w w. ja  va2  s  .co  m
protected RequestHandle sendRequest(DefaultHttpClient client, HttpContext httpContext,
        HttpUriRequest uriRequest, String contentType, ResponseHandlerInterface responseHandler,
        Context context) {
    if (contentType != null) {
        uriRequest.setHeader("Content-Type", contentType);
    }

    responseHandler.setRequestHeaders(uriRequest.getAllHeaders());
    responseHandler.setRequestURI(uriRequest.getURI());

    //tangwh  add, ?????cookie?cookie?setCookieStore?uriRequestHeader?
    //??http2Cookie???cookieStore
    client.setCookieStore(null);

    Future<?> request = threadPool
            .submit(new AsyncHttpRequest(client, httpContext, uriRequest, responseHandler));

    if (context != null) {
        // Add request to request map
        List<WeakReference<Future<?>>> requestList = requestMap.get(context);
        if (requestList == null) {
            requestList = new LinkedList<WeakReference<Future<?>>>();
            requestMap.put(context, requestList);
        }

        requestList.add(new WeakReference<Future<?>>(request));

        // TODO: Remove dead weakrefs from requestLists?
    }

    return new RequestHandle(request);
}

From source file:com.activiti.service.activiti.ProcessDefinitionService.java

protected BpmnModel executeRequestForXML(HttpUriRequest request, ServerConfig serverConfig,
        int expectedStatusCode) {

    ActivitiServiceException exception = null;
    CloseableHttpClient client = clientUtil.getHttpClient(serverConfig);
    try {/*from w w w.j av  a  2  s  .c  o m*/
        CloseableHttpResponse response = client.execute(request);

        try {
            InputStream responseContent = response.getEntity().getContent();
            XMLInputFactory xif = XMLInputFactory.newInstance();
            InputStreamReader in = new InputStreamReader(responseContent, "UTF-8");
            XMLStreamReader xtr = xif.createXMLStreamReader(in);
            BpmnModel bpmnModel = new BpmnXMLConverter().convertToBpmnModel(xtr);

            boolean success = response.getStatusLine() != null
                    && response.getStatusLine().getStatusCode() == expectedStatusCode;

            if (success) {
                return bpmnModel;
            } else {
                exception = new ActivitiServiceException(
                        "An error occured while calling Activiti: " + response.getStatusLine());
            }
        } catch (Exception e) {
            log.warn("Error consuming response from uri " + request.getURI(), e);
            exception = clientUtil.wrapException(e, request);
        } finally {
            response.close();
        }

    } catch (Exception e) {
        log.error("Error executing request to uri " + request.getURI(), e);
        exception = clientUtil.wrapException(e, request);

    } finally {
        try {
            client.close();
        } catch (Exception e) {
            log.warn("Error closing http client instance", e);
        }
    }

    if (exception != null) {
        throw exception;
    }

    return null;
}

From source file:org.flowable.admin.service.engine.ProcessDefinitionService.java

protected BpmnModel executeRequestForXML(HttpUriRequest request, ServerConfig serverConfig,
        int expectedStatusCode) {

    FlowableServiceException exception = null;
    CloseableHttpClient client = clientUtil.getHttpClient(serverConfig);
    try {//from ww  w  . j a  v  a 2  s .  c om
        CloseableHttpResponse response = client.execute(request);

        try {
            InputStream responseContent = response.getEntity().getContent();
            XMLInputFactory xif = XMLInputFactory.newInstance();
            InputStreamReader in = new InputStreamReader(responseContent, "UTF-8");
            XMLStreamReader xtr = xif.createXMLStreamReader(in);
            BpmnModel bpmnModel = new BpmnXMLConverter().convertToBpmnModel(xtr);

            boolean success = response.getStatusLine() != null
                    && response.getStatusLine().getStatusCode() == expectedStatusCode;

            if (success) {
                return bpmnModel;
            } else {
                exception = new FlowableServiceException(
                        "An error occurred while calling Flowable: " + response.getStatusLine());
            }
        } catch (Exception e) {
            log.warn("Error consuming response from uri {}", request.getURI(), e);
            exception = clientUtil.wrapException(e, request);
        } finally {
            response.close();
        }

    } catch (Exception e) {
        log.error("Error executing request to uri {}", request.getURI(), e);
        exception = clientUtil.wrapException(e, request);

    } finally {
        try {
            client.close();
        } catch (Exception e) {
            log.warn("Error closing http client instance", e);
        }
    }

    if (exception != null) {
        throw exception;
    }

    return null;
}

From source file:org.deviceconnect.android.profile.restful.test.RESTfulDConnectTestCase.java

/**
 * HTTP??.//  w ww  .j a v a2  s  . com
 * @param request HTTP
 * @param requiredAuth ????????????
 * @param count ?
 * @return ?
 */
protected final JSONObject sendRequest(final HttpUriRequest request, final boolean requiredAuth,
        final int count) {
    try {
        JSONObject response = sendRequestInternal(request, requiredAuth);
        int result = response.getInt(DConnectMessage.EXTRA_RESULT);
        if (result == DConnectMessage.RESULT_ERROR && count <= RETRY_COUNT) {
            if (!response.has(DConnectMessage.EXTRA_ERROR_CODE)) {
                return response;
            }
            int errorCode = response.getInt(DConnectMessage.EXTRA_ERROR_CODE);
            if (errorCode == DConnectMessage.ErrorCode.EXPIRED_ACCESS_TOKEN.getCode()) {
                mAccessToken = requestAccessToken(mClientId, mClientSecret, PROFILES);
                assertNotNull(mAccessToken);
                storeOAuthInfo(mClientId, mClientSecret, mAccessToken);

                URI uri = request.getURI();
                URIBuilder builder = new URIBuilder(uri);
                builder.addParameter(AuthorizationProfileConstants.PARAM_ACCESS_TOKEN, getAccessToken());

                final HttpUriRequest newRequest;
                if (request instanceof HttpGet) {
                    newRequest = new HttpGet(builder.toString());
                } else if (request instanceof HttpPost) {
                    HttpPost newPostRequest = new HttpPost(builder.toString());
                    newPostRequest.setEntity(((HttpPost) request).getEntity());
                    newRequest = newPostRequest;
                } else if (request instanceof HttpPut) {
                    HttpPut newPostRequest = new HttpPut(builder.toString());
                    newPostRequest.setEntity(((HttpPost) request).getEntity());
                    newRequest = newPostRequest;
                } else if (request instanceof HttpDelete) {
                    newRequest = new HttpDelete(builder.toString());
                } else {
                    fail("Invalid method is specified: " + request.getMethod());
                    return null;
                }
                return sendRequest(newRequest, requiredAuth, count + 1);
            }
        }
        return response;
    } catch (JSONException e) {
        Assert.fail("IOException: " + e.getMessage());
    }
    return null;
}

From source file:com.flyn.net.asynchttp.AsyncHttpClient.java

/**
 * Puts a new request in queue as a new thread in pool to be executed
 *
 * @param client          HttpClient to be used for request, can differ in single
 *                        requests//from w ww. ja  v a2  s . co m
 * @param contentType     MIME body type, for POST and PUT requests, may be null
 * @param context         Context of Android application, to hold the reference of
 *                        request
 * @param httpContext     HttpContext in which the request will be executed
 * @param responseHandler ResponseHandler or its subclass to put the response into
 * @param uriRequest      instance of HttpUriRequest, which means it must be of
 *                        HttpDelete, HttpPost, HttpGet, HttpPut, etc.
 * @return RequestHandle of future request process
 */
protected RequestHandle sendRequest(DefaultHttpClient client, HttpContext httpContext,
        HttpUriRequest uriRequest, String contentType, ResponseHandlerInterface responseHandler,
        Context context) {
    if (contentType != null) {
        uriRequest.setHeader("Content-Type", contentType);
    }

    responseHandler.setRequestHeaders(uriRequest.getAllHeaders());
    responseHandler.setRequestURI(uriRequest.getURI());

    AsyncHttpRequest request = new AsyncHttpRequest(client, httpContext, uriRequest, responseHandler);
    threadPool.submit(request);
    RequestHandle requestHandle = new RequestHandle(request);

    if (context != null) {
        // Add request to request map
        List<RequestHandle> requestList = requestMap.get(context);
        if (requestList == null) {
            requestList = new LinkedList<RequestHandle>();
            requestMap.put(context, requestList);
        }

        requestList.add(requestHandle);

        Iterator<RequestHandle> iterator = requestList.iterator();
        while (iterator.hasNext()) {
            if (iterator.next().shouldBeGarbageCollected()) {
                iterator.remove();
            }
        }
    }

    return requestHandle;
}

From source file:com.joyent.manta.http.StandardHttpHelper.java

@Override
public CloseableHttpResponse executeRequest(final HttpUriRequest request, final Integer expectedStatusCode,
        final String logMessage, final Object... logParameters) throws IOException {
    Validate.notNull(request, "Request object must not be null");

    CloseableHttpClient client = connectionContext.getHttpClient();

    CloseableHttpResponse response = client.execute(request);
    StatusLine statusLine = response.getStatusLine();

    if (LOGGER.isDebugEnabled() && logMessage != null) {
        LOGGER.debug(logMessage, logParameters, statusLine.getStatusCode(), statusLine.getReasonPhrase());
    }//from w w  w.  j  ava2s. c o  m

    if (isFailedStatusCode(expectedStatusCode, statusLine)) {
        throw new MantaClientHttpResponseException(request, response, request.getURI().getPath());
    }

    return response;
}

From source file:org.openrdf.http.client.SparqlSession.java

protected void executeNoContent(HttpUriRequest method) throws IOException, OpenRDFException {
    HttpResponse response = execute(method);
    try {//from  ww  w  .  ja  v a2s . c  om
        if (response.getStatusLine().getStatusCode() >= 300) {
            // trying to contact a non-Sesame server?
            throw new RepositoryException("Failed to get server protocol; no such resource on this server: "
                    + method.getURI().toString());
        }
    } finally {
        EntityUtils.consume(response.getEntity());
    }
}

From source file:org.eclipse.rdf4j.http.client.SPARQLProtocolSession.java

protected void executeNoContent(HttpUriRequest method) throws IOException, RDF4JException {
    HttpResponse response = execute(method);
    try {/*from  w  w  w .  ja  v  a  2 s .c o  m*/
        if (response.getStatusLine().getStatusCode() >= 300) {
            throw new RepositoryException("Failed to get server protocol; no such resource on this server: "
                    + method.getURI().toString());
        }
    } finally {
        EntityUtils.consume(response.getEntity());
    }
}

From source file:com.joyent.manta.http.StandardHttpHelper.java

@Override
public CloseableHttpResponse executeRequest(final HttpUriRequest request, final Integer expectedStatusCode,
        final boolean closeResponse, final String logMessage, final Object... logParameters)
        throws IOException {
    Validate.notNull(request, "Request object must not be null");

    CloseableHttpClient client = connectionContext.getHttpClient();
    CloseableHttpResponse response = client.execute(request);

    try {//from  w  w w . j  a v a 2s.  co m
        StatusLine statusLine = response.getStatusLine();

        if (LOGGER.isDebugEnabled() && logMessage != null) {
            LOGGER.debug(logMessage, logParameters, statusLine.getStatusCode(), statusLine.getReasonPhrase());
        }

        if (isFailedStatusCode(expectedStatusCode, statusLine)) {
            String path = request.getURI().getPath();
            throw new MantaClientHttpResponseException(request, response, path);
        }

        return response;
    } finally {
        if (closeResponse) {
            IOUtils.closeQuietly(response);
        }
    }
}

From source file:eu.nullbyte.android.urllib.Urllib.java

public HttpResponse openAsHttpResponse(String url, HttpEntity entity, HttpMethod method)
        throws ClientProtocolException, IOException {
    this.currentURI = url;
    HttpResponse response;//ww  w .j av a 2  s  .c  o m
    String[] headerKeys = (String[]) this.headers.keySet().toArray(new String[headers.size()]);
    String[] headerVals = (String[]) this.headers.values().toArray(new String[headers.size()]);
    ResponseHandler<String> responseHandler = new BasicResponseHandler();
    HttpUriRequest request;
    switch (method) {
    case GET:
        request = new HttpGet(url);
        break;
    case POST:
        request = new HttpPost(url);
        ((HttpPost) request).setEntity(entity);
        break;
    case PUT:
        request = new HttpPut(url);
        ((HttpPut) request).setEntity(entity);
        break;
    default:
        request = new HttpGet(url);
    }
    if (userAgent != null)
        request.addHeader("User-Agent", userAgent);

    for (int i = 0; i < headerKeys.length; i++) {
        request.addHeader(headerKeys[i], headerVals[i]);
    }

    response = httpclient.execute(request, mHttpContext);

    //HttpUriRequest currentReq = (HttpUriRequest)mHttpContext.getAttribute(ExecutionContext.HTTP_REQUEST);
    //HttpHost currentHost = (HttpHost)mHttpContext.getAttribute(ExecutionContext.HTTP_TARGET_HOST);
    //this.currentURI = currentHost.toURI() + currentReq.getURI();
    this.currentURI = request.getURI().toString();

    return response;
}