List of usage examples for org.apache.http.client.methods HttpUriRequest getURI
URI getURI();
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; }