List of usage examples for org.apache.http.client.fluent Request setHeader
public Request setHeader(final String name, final String value)
From source file:com.jaspersoft.studio.server.utils.HttpUtils.java
public static Request setRequest(Request req, ServerProfile sp) { req.connectTimeout(sp.getTimeout()); req.socketTimeout(sp.getTimeout());/*from www .j av a 2 s . c om*/ if (sp.isChunked()) req.setHeader("Transfer-Encoding", "chunked"); else req.removeHeaders("Transfer-Encoding"); req.setHeader("Accept", "application/" + RestV2Connection.FORMAT); return req; }
From source file:com.jaspersoft.studio.server.protocol.restv2.RestV2Connection.java
@Override public ResourceDescriptor move(IProgressMonitor monitor, ResourceDescriptor rd, String destFolderURI) throws Exception { URIBuilder ub = new URIBuilder(url("resources" + destFolderURI)); ub.addParameter("overwrite", "true"); ub.addParameter("createFolders", "true"); Request req = HttpUtils.put(ub.build().toASCIIString(), sp); req.setHeader("Content-Location", rd.getUriString()); String rtype = WsTypes.INST().toRestType(rd.getWsType()); ClientResource<?> crl = toObj(req, WsTypes.INST().getType(rtype), monitor); if (crl != null) return Rest2Soap.getRD(this, crl, rd); return null;//from ww w . j av a2 s . co m }
From source file:com.jaspersoft.studio.server.protocol.restv2.RestV2Connection.java
@Override public ResourceDescriptor copy(IProgressMonitor monitor, ResourceDescriptor rd, String destFolderURI) throws Exception { URIBuilder ub = new URIBuilder(url("resources" + destFolderURI)); ub.addParameter("overwrite", "true"); ub.addParameter("createFolders", "true"); Request req = HttpUtils.post(ub.build().toASCIIString(), sp); req.setHeader("Content-Location", rd.getUriString()); String rtype = WsTypes.INST().toRestType(rd.getWsType()); ClientResource<?> crl = toObj(req, WsTypes.INST().getType(rtype), monitor); if (crl != null) return Rest2Soap.getRD(this, crl, rd); return null;/* ww w . j a v a 2 s.c om*/ }
From source file:com.jaspersoft.studio.server.protocol.restv2.RestV2Connection.java
@Override public ResourceDescriptor get(IProgressMonitor monitor, ResourceDescriptor rd, File f) throws Exception { URIBuilder ub = new URIBuilder(url("resources" + rd.getUriString())); ub.addParameter("expanded", "true"); Request req = HttpUtils.get(ub.build().toASCIIString(), sp); String rtype = WsTypes.INST().toRestType(rd.getWsType()); req.setHeader("Accept", "application/repository." + rtype + "+" + FORMAT); ClientResource<?> crl = toObj(req, WsTypes.INST().getType(rtype), monitor); if (crl != null) return Rest2Soap.getRD(this, crl, rd); return null;//from w w w . j a v a 2s . com }
From source file:de.elomagic.maven.http.HTTPMojo.java
@Override public void execute() throws MojoExecutionException, MojoFailureException { try {/* w w w .j a v a2 s . c o m*/ Executor executor; if (httpsInsecure) { getLog().info("Accepting unsecure HTTPS connections."); try { SSLContextBuilder builder = new SSLContextBuilder(); builder.loadTrustMaterial(null, new TrustAllStrategy()); SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(builder.build()); final Registry<ConnectionSocketFactory> sfr = RegistryBuilder.<ConnectionSocketFactory>create() .register("http", PlainConnectionSocketFactory.getSocketFactory()) .register("https", sslsf).build(); PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager( sfr); connectionManager.setDefaultMaxPerRoute(100); connectionManager.setMaxTotal(200); connectionManager.setValidateAfterInactivity(1000); HttpClient httpClient = HttpClientBuilder.create().setConnectionManager(connectionManager) .build(); executor = Executor.newInstance(httpClient); } catch (Exception ex) { throw new Exception("Unable to setup HTTP client for unstrusted connections.", ex); } } else { executor = Executor.newInstance(); } Settings settings = session.getSettings(); if (StringUtils.isNotBlank(serverId)) { Server server = settings.getServer(serverId); if (server == null) { throw new Exception("Server ID \"" + serverId + "\" not found in your Maven settings.xml"); } getLog().debug("ServerId: " + serverId); executor.auth(server.getUsername(), server.getPassword()); } Request request = createRequestMethod(); request.setHeader("Accept", accept); if (httpHeaders != null) { for (Entry<String, String> entry : httpHeaders.entrySet()) { request.addHeader(entry.getKey(), entry.getValue()); } } if (formParams != null) { Form form = Form.form(); for (Entry<String, String> entry : formParams.entrySet()) { form.add(entry.getKey(), entry.getValue()); } } if (fromFile != null) { if (!fromFile.exists()) { throw new MojoExecutionException("From file \"" + fromFile + "\" doesn't exist."); } if (StringUtils.isBlank(contentType)) { contentType = Files.probeContentType(fromFile.toPath()); } getLog().debug("From file: " + fromFile); getLog().debug("Upload file size: " + FileUtils.byteCountToDisplaySize(new Long(fromFile.length()).intValue())); getLog().debug("Content type: " + contentType); if (StringUtils.isBlank(contentType)) { request.body(new FileEntity(fromFile)); } else { request.body(new FileEntity(fromFile, ContentType.create(contentType))); } } getLog().info(method + " " + url); Response response = executor.execute(request); handleResponse(response); } catch (Exception ex) { getLog().error(ex); if (failOnError) { throw new MojoExecutionException(ex.getMessage(), ex); } else { getLog().info("Fail on error is disabled. Continue execution."); } } }
From source file:be.fedict.dcat.datagovbe.Drupal.java
/** * Prepare a POST or PUT action.//from w w w . j a v a 2 s.com * * @param method POST or PUT * @param relpath relative path * @return */ private Request prepare(String method, String relpath) { String u = this.url.toString() + relpath; Request r = method.equals(Drupal.POST) ? Request.Post(u) : Request.Put(u); r.setHeader(HttpHeaders.ACCEPT, ContentType.APPLICATION_JSON.getMimeType()).setHeader(Drupal.X_TOKEN, token); if (proxy != null) { r.viaProxy(proxy); } return r; }
From source file:org.eclipse.userstorage.internal.Session.java
public boolean deleteBlob(String applicationToken, String key, final Map<String, String> properties, ICredentialsProvider credentialsProvider) throws IOException, ConflictException { URI uri = StringUtil.newURI(service.getServiceURI(), "api/blob/" + applicationToken + "/" + key); boolean deleted = new RequestTemplate<Boolean>(uri) { @Override//from w w w. j av a 2 s.c o m protected Request prepareRequest() throws IOException { Request request = configureRequest(Request.Delete(uri), uri); String eTag = properties.get(Blob.ETAG); if (!StringUtil.isEmpty(eTag)) { request.setHeader(IF_MATCH, "\"" + eTag + "\""); } return request; } @Override protected Boolean handleResponse(HttpResponse response, HttpEntity responseEntity) throws IOException { int statusCode = getStatusCode("DELETE", uri, response, NO_CONTENT, CONFLICT, NOT_FOUND); String eTag = getETag(response); if (statusCode == CONFLICT) { StatusLine statusLine = response.getStatusLine(); throw new ConflictException("DELETE", uri, getProtocolVersion(statusLine), statusLine.getReasonPhrase(), eTag); } properties.put(Blob.ETAG, "<deleted_etag>"); return statusCode == NO_CONTENT; } }.send(credentialsProvider); return deleted; }
From source file:org.eclipse.userstorage.internal.Session.java
public boolean updateBlob(String applicationToken, String key, final Map<String, String> properties, final InputStream in, ICredentialsProvider credentialsProvider) throws IOException, ConflictException { URI uri = StringUtil.newURI(service.getServiceURI(), "api/blob/" + applicationToken + "/" + key); return new RequestTemplate<Boolean>(uri) { @Override/*w ww . j a va 2 s .c om*/ protected Request prepareRequest() throws IOException { Request request = configureRequest(Request.Put(uri), uri); String eTag = properties.get(Blob.ETAG); if (DEBUG) { System.out.println("Updating etag = " + eTag); } if (!StringUtil.isEmpty(eTag)) { request.setHeader(IF_MATCH, "\"" + eTag + "\""); } body = JSONUtil.build(Collections.singletonMap("value", in)); request.bodyStream(body); return request; } @Override protected Boolean handleResponse(HttpResponse response, HttpEntity responseEntity) throws IOException { String eTag = getETag(response); int statusCode = getStatusCode("PUT", uri, response, OK, CREATED, CONFLICT); if (statusCode == CONFLICT) { StatusLine statusLine = response.getStatusLine(); throw new ConflictException("PUT", uri, getProtocolVersion(statusLine), statusLine.getReasonPhrase(), eTag); } if (eTag == null) { throw new ProtocolException("PUT", uri, getProtocolVersion(response.getStatusLine()), BAD_RESPONSE, "Bad Response : No ETag"); } if (DEBUG) { System.out.println("Updated etag = " + eTag); } properties.put(Blob.ETAG, eTag); return statusCode == CREATED; } }.send(credentialsProvider); }
From source file:org.eclipse.userstorage.internal.Session.java
public InputStream retrieveBlob(String applicationToken, String key, final Map<String, String> properties, final boolean useETag, ICredentialsProvider credentialsProvider) throws IOException { URI uri = StringUtil.newURI(service.getServiceURI(), "api/blob/" + applicationToken + "/" + key); return new RequestTemplate<InputStream>(uri) { @Override/* w w w . j a v a 2s. co m*/ protected Request prepareRequest() throws IOException { Request request = configureRequest(Request.Get(uri), uri); if (useETag) { String eTag = properties.get(Blob.ETAG); if (DEBUG) { System.out.println("Retrieving etag = " + eTag); } if (!StringUtil.isEmpty(eTag)) { request.setHeader(IF_NONE_MATCH, "\"" + eTag + "\""); } } return request; } @Override protected InputStream handleResponse(HttpResponse response, HttpEntity responseEntity) throws IOException { int statusCode = getStatusCode("GET", uri, response, OK, NOT_MODIFIED, NOT_FOUND); String eTag = getETag(response); if (eTag != null) { if (DEBUG) { System.out.println("Retrieved etag = " + eTag); } properties.put(Blob.ETAG, eTag); } if (statusCode == OK) { Map<String, Object> object = JSONUtil.parse(responseEntity.getContent(), "value"); InputStream stream = (InputStream) object.remove("value"); for (Map.Entry<String, Object> entry : object.entrySet()) { Object value = entry.getValue(); properties.put(entry.getKey(), String.valueOf(value)); } return stream; } if (statusCode == NOT_MODIFIED) { return Blob.NOT_MODIFIED; } // Blob wasn't found. properties.clear(); StatusLine statusLine = response.getStatusLine(); throw new NotFoundException("GET", uri, getProtocolVersion(statusLine), statusLine.getReasonPhrase()); } }.send(credentialsProvider); }