List of usage examples for org.apache.http.client.protocol HttpClientContext create
public static HttpClientContext create()
From source file:org.sonatype.nexus.plugins.crowd.client.rest.RestClient.java
/** * Returns user list based on userid// www . j a v a 2s . c o m * @param userId * @param email * @param filterGroups * @return * @throws RemoteException * @throws UnsupportedEncodingException */ public Set<User> searchUsers(String userId) throws RemoteException { LOG.debug("searchUsers({})", userId); HttpClientContext hc = HttpClientContext.create(); int maxResults = 1000; if (StringUtils.isNotEmpty(userId)) { StringBuilder request = new StringBuilder("search?entity-type=user&max-results=").append(maxResults) .append("&restriction="); StringBuilder searchQuery = new StringBuilder("active=true"); searchQuery.append(" AND name=\"").append(userId.trim()).append("*\""); request.append(urlEncode(searchQuery.toString())).append("&start-index="); int startIndex = 0; Set<User> result = new HashSet<>(); try { while (true) { HttpGet get = enablePreemptiveAuth( acceptXmlResponse(new HttpGet(crowdServer.resolve(request.toString() + startIndex))), hc); SearchUserGetResponse users = null; if (LOG.isDebugEnabled()) { LOG.debug(get.getURI().toString()); } try { HttpResponse response = client.execute(get); if (response.getStatusLine().getStatusCode() != 200) { handleHTTPError(response); } users = unmarshal(response, SearchUserGetResponse.class); } finally { get.releaseConnection(); } if (users != null && users.user != null) { for (UserResponse user : users.user) { result.add(getUser(user.name)); } if (users.user.size() != maxResults) { break; } startIndex += maxResults; } else { break; } } } catch (IOException | JAXBException | AuthenticationException ioe) { handleError(ioe); } return result; } return Collections.emptySet(); }
From source file:org.duracloud.common.web.RestHttpHelper.java
private HttpResponse executeRequest(String url, Method method, HttpEntity requestEntity, Map<String, String> headers) throws IOException { if (url == null || url.length() == 0) { throw new IllegalArgumentException("URL must be a non-empty value"); }//from w w w . jav a2 s . c om HttpRequestBase httpRequest = method.getMethod(url, requestEntity); if (headers != null && headers.size() > 0) { addHeaders(httpRequest, headers); } if (log.isDebugEnabled()) { log.debug(loggingRequestText(url, method, requestEntity, headers)); } org.apache.http.HttpResponse response; if (null != credsProvider) { HttpClientBuilder builder = HttpClients.custom().setDefaultCredentialsProvider(credsProvider); if (socketTimeoutMs > -1) { BasicHttpClientConnectionManager cm = new BasicHttpClientConnectionManager(); cm.setSocketConfig(SocketConfig.custom().setSoTimeout(socketTimeoutMs).build()); builder.setConnectionManager(cm); } CloseableHttpClient httpClient = buildClient(builder, method); // Use preemptive basic auth URI requestUri = httpRequest.getURI(); HttpHost target = new HttpHost(requestUri.getHost(), requestUri.getPort(), requestUri.getScheme()); AuthCache authCache = new BasicAuthCache(); BasicScheme basicAuth = new BasicScheme(); authCache.put(target, basicAuth); HttpClientContext localContext = HttpClientContext.create(); localContext.setAuthCache(authCache); response = httpClient.execute(httpRequest, localContext); } else { CloseableHttpClient httpClient = buildClient(HttpClients.custom(), method); response = httpClient.execute(httpRequest); } HttpResponse httpResponse = new HttpResponse(response); if (log.isDebugEnabled()) { log.debug(loggingResponseText(httpResponse)); } return httpResponse; }
From source file:com.aliyun.oss.common.comm.DefaultServiceClient.java
protected HttpClientContext createHttpContext() { HttpClientContext httpContext = HttpClientContext.create(); httpContext.setRequestConfig(this.requestConfig); if (this.credentialsProvider != null) { httpContext.setCredentialsProvider(this.credentialsProvider); httpContext.setAuthCache(this.authCache); }//from w ww.j ava2 s . c om return httpContext; }
From source file:com.mirth.connect.client.core.ServerConnection.java
/** * The requests sent through this channel will be aborted on the client side when a new request * arrives. Currently there is no guarantee of the order that pending requests will be sent. *//* w ww. j av a2 s. c o m*/ private ClientResponse executeAbortPending(ClientRequest request) throws ClientException { // TODO: Make order sequential abortTask.incrementRequestsInQueue(); synchronized (abortExecutor) { if (!abortExecutor.isShutdown() && !abortTask.isRunning()) { abortExecutor.execute(abortTask); } HttpRequestBase requestBase = null; CloseableHttpResponse response = null; boolean shouldClose = true; try { abortPendingClientContext = HttpClientContext.create(); abortPendingClientContext.setRequestConfig(requestConfig); requestBase = setupRequestBase(request, ExecuteType.ABORT_PENDING); abortTask.setAbortAllowed(true); response = client.execute(requestBase, abortPendingClientContext); abortTask.setAbortAllowed(false); ClientResponse responseContext = handleResponse(request, requestBase, response); if (responseContext.hasEntity()) { shouldClose = false; } return responseContext; } catch (Exception e) { if (requestBase != null && requestBase.isAborted()) { return new ClientResponse(Status.NO_CONTENT, request); } else if (e instanceof ClientException) { throw (ClientException) e; } throw new ClientException(e); } finally { abortTask.decrementRequestsInQueue(); if (shouldClose) { HttpClientUtils.closeQuietly(response); } } } }
From source file:org.keycloak.testsuite.oauth.OAuthRedirectUriTest.java
@Test public void testWithCustomScheme() throws IOException { oauth.clientId("custom-scheme"); oauth.redirectUri(//from ww w . jav a 2 s . c om "android-app://org.keycloak.examples.cordova/https/keycloak-cordova-example.github.io/login"); oauth.openLoginForm(); RequestConfig globalConfig = RequestConfig.custom().setCookieSpec(CookieSpecs.BEST_MATCH).build(); CookieStore cookieStore = new BasicCookieStore(); HttpClientContext context = HttpClientContext.create(); context.setCookieStore(cookieStore); String loginUrl = driver.getCurrentUrl(); CloseableHttpClient client = HttpClients.custom().setDefaultRequestConfig(globalConfig) .setDefaultCookieStore(cookieStore).build(); try { String loginPage = SimpleHttp.doGet(loginUrl, client).asString(); String formAction = loginPage.split("action=\"")[1].split("\"")[0].replaceAll("&", "&"); SimpleHttp.Response response = SimpleHttp.doPost(formAction, client) .param("username", "test-user@localhost").param("password", "password").asResponse(); response.getStatus(); assertThat(response.getFirstHeader("Location"), Matchers.startsWith( "android-app://org.keycloak.examples.cordova/https/keycloak-cordova-example.github.io/login")); } finally { client.close(); } }
From source file:org.apache.ofbiz.solr.SolrUtil.java
public static HttpSolrClient getHttpSolrClient(String solrIndexName) throws ClientProtocolException, IOException { HttpClientContext httpContext = HttpClientContext.create(); CloseableHttpClient httpClient = null; if (trustSelfSignedCert) { httpClient = UtilHttp.getAllowAllHttpClient(); } else {/*from w w w. ja va2 s . com*/ httpClient = HttpClients.createDefault(); } RequestConfig requestConfig = null; if (UtilValidate.isNotEmpty(socketTimeout) && UtilValidate.isNotEmpty(connectionTimeout)) { requestConfig = RequestConfig.custom().setSocketTimeout(socketTimeout) .setConnectTimeout(connectionTimeout).setRedirectsEnabled(true).build(); } else if (UtilValidate.isNotEmpty(socketTimeout)) { requestConfig = RequestConfig.custom().setSocketTimeout(socketTimeout).setRedirectsEnabled(true) .build(); } else if (UtilValidate.isNotEmpty(connectionTimeout)) { requestConfig = RequestConfig.custom().setConnectTimeout(connectionTimeout).setRedirectsEnabled(true) .build(); } else { requestConfig = RequestConfig.custom().setRedirectsEnabled(true).build(); } HttpGet httpLogin = new HttpGet( solrUrl + "/control/login?USERNAME=" + clientUsername + "&PASSWORD=" + clientPassword); httpLogin.setConfig(requestConfig); CloseableHttpResponse loginResponse = httpClient.execute(httpLogin, httpContext); loginResponse.close(); return new HttpSolrClient(solrUrl + "/" + solrIndexName, httpClient); }
From source file:org.springframework.xd.dirt.integration.bus.rabbit.RabbitBusCleaner.java
@VisibleForTesting static RestTemplate buildRestTemplate(String adminUri, String user, String password) { BasicCredentialsProvider credsProvider = new BasicCredentialsProvider(); credsProvider.setCredentials(new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT), new UsernamePasswordCredentials(user, password)); HttpClient httpClient = HttpClients.custom().setDefaultCredentialsProvider(credsProvider).build(); // Set up pre-emptive basic Auth because the rabbit plugin doesn't currently support challenge/response for PUT // Create AuthCache instance AuthCache authCache = new BasicAuthCache(); // Generate BASIC scheme object and add it to the local; from the apache docs... // auth cache BasicScheme basicAuth = new BasicScheme(); URI uri;/*from w w w .j av a 2 s . c om*/ try { uri = new URI(adminUri); } catch (URISyntaxException e) { throw new RabbitAdminException("Invalid URI", e); } authCache.put(new HttpHost(uri.getHost(), uri.getPort(), uri.getScheme()), basicAuth); // Add AuthCache to the execution context final HttpClientContext localContext = HttpClientContext.create(); localContext.setAuthCache(authCache); RestTemplate restTemplate = new RestTemplate(new HttpComponentsClientHttpRequestFactory(httpClient) { @Override protected HttpContext createHttpContext(HttpMethod httpMethod, URI uri) { return localContext; } }); restTemplate.setMessageConverters( Collections.<HttpMessageConverter<?>>singletonList(new MappingJackson2HttpMessageConverter())); return restTemplate; }
From source file:de.dtag.tlabs.cbclient.CBClient.java
/** * Is called by the polling Timer/* w w w. java2 s. com*/ */ private void performPolling() { HttpHost targetHost = new HttpHost(contextBrokerIPAddr, contextBrokerPort, "http"); HttpClientContext context = HttpClientContext.create(); // HttpGetWithEntity httpGet = new HttpGetWithEntity(contextBrokerRequestLine); //httpGet.setHeader("Content-Type", "application/xml"); HttpPost httpPostContext = new HttpPost(contextBrokerRequestLine); String getXMLInfo = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + "<queryContextRequest>" + "<entityIdList>" + "<entityId type=\"User_Context\" isPattern=\"false\">" + "<id>User1</id>" + "</entityId>" + "</entityIdList>" + "<attributeList/>" + "</queryContextRequest>"; StringEntity getEntity = new StringEntity(getXMLInfo, ContentType.APPLICATION_XML); httpPostContext.setEntity(getEntity); try { CloseableHttpResponse response = httpClient.execute(targetHost, httpPostContext, context); HttpEntity entity = response.getEntity(); // System.out.println("Response: " + response.getStatusLine().toString()); // System.out.println("Response Body-Type: " + entity.getContentType()); StringWriter writer = new StringWriter(); InputStream is = entity.getContent(); IOUtils.copy(is, writer); String responseContent = writer.toString(); System.out.println(responseContent); checkForHandOver(responseContent); } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }