List of usage examples for org.springframework.http HttpHeaders add
@Override public void add(String headerName, @Nullable String headerValue)
From source file:com.aspose.showcase.qrcodegen.web.api.controller.QRCodeManagementController.java
/** * generateQRCode - Main API to generate QR Code * //www . j av a 2s . c o m * @throws Exception * * */ @RequestMapping(value = "generate", method = RequestMethod.GET, produces = { MediaType.IMAGE_JPEG_VALUE, MediaType.IMAGE_PNG_VALUE, MediaType.IMAGE_GIF_VALUE, MEDIATYPE_IMAGE_TIFF_VALUE, MEDIATYPE_IMAGE_BMP_VALUE }) @ApiOperation(value = "Generate QR Code.") public ResponseEntity<byte[]> generateQRCode( @ApiParam(value = "data", name = "data", required = true) @RequestParam("data") String data, @ApiParam(value = "A user-chosen password that can be used with password-based encryption (PBE) Algo PBEWITHMD5AND128BITAES-CBC-OPENSSL)", name = "passKey", required = false) @RequestParam(required = false, value = "passKey") String passKey, @ApiParam(value = "ForeColor e.g #000000 (Black - RGB(hex))", name = "foreColor", required = false) @RequestParam(required = false, value = "foreColor") String foreColor, @ApiParam(value = "BackgroundColor e.g #FFFFFF (White - RGB(hex))", name = "bgColor", required = false) @RequestParam(required = false, value = "bgColor") String bgColor, @ApiParam(value = "L|M|Q|H - Reed-Solomon error correctionCode Level(from low to high) default=Low", name = "ecc", required = false) @RequestParam(required = false, value = "ecc") String ecc, @ApiParam(value = "Image Size e.g #150x150", name = "size", required = false) @RequestParam(required = false, value = "size") String size, @ApiParam(value = "jpeg|tiff|gif|png|bmp - default=png", name = "format", required = false) @RequestParam(required = false, value = "format") String format, @ApiParam(value = "true|false default=false", name = "download", required = false) @RequestParam(required = false, value = "download") boolean download, @ApiIgnore @Value("#{request.getHeader('" + ACCEPT_HEADER + "')}") String acceptHeaderValue) throws Exception { Assert.isTrue(StringUtils.isNotEmpty(data), "Please provide valid data param."); LOGGER.debug("Accept Header::" + acceptHeaderValue); HttpHeaders responseHeaders = new HttpHeaders(); if (!(StringUtils.isBlank(passKey))) { builder.setCodeText(StringEncryptor.encrypt(data, passKey)); } else { builder.setCodeText(data); } builder.setImageQuality(ImageQualityMode.Default); builder.setSymbologyType(Symbology.QR); builder.setCodeLocation(CodeLocation.None); builder.setForeColor(getColorValue(foreColor, "#000000")); builder.setBackColor(getColorValue(bgColor, "#FFFFFF")); builder.setQRErrorLevel(getErrorCorrectCode(ecc, QRErrorLevel.LevelL)); Dimension imageDimention = geCustomImageSizeDimention(size); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageFormatDTO responseImageTypeDto = getRequestedImageFormat(responseHeaders, acceptHeaderValue, format); long startTime = System.currentTimeMillis(); LOGGER.debug("builder.save Start @ " + startTime); byte[] imageInByte; if (imageDimention != null) { // Set graphics unit builder.setGraphicsUnit(GraphicsUnit.Millimeter); // Set margins builder.getMargins().set(0); builder.setForeColor(getColorValue(foreColor, "#000000")); builder.setBackColor(getColorValue(bgColor, "#FFFFFF")); LOGGER.debug("builder.getGraphicsUnit() ::" + builder.getGraphicsUnit()); // Get BufferedImage with exact bar code only BufferedImage img = builder.getOnlyBarCodeImage(); LOGGER.debug("img.getWidth() : :" + img.getWidth()); LOGGER.debug("img.getHeight() :: " + img.getHeight()); if (imageDimention.getWidth() < img.getWidth()) { imageDimention.width = img.getWidth(); } if (imageDimention.getHeight() < img.getHeight()) { imageDimention.height = img.getHeight(); } BufferedImage img2 = builder.getCustomSizeBarCodeImage(imageDimention, true); MediaType responseType = responseImageTypeDto.getMediaType(); ImageIO.write(img2, responseType.getSubtype(), baos); baos.flush(); imageInByte = baos.toByteArray(); baos.close(); } else { builder.setxDimension(1.0f); builder.setyDimension(1.0f); builder.save(baos, responseImageTypeDto.getBarCodeImageFormat()); baos.flush(); imageInByte = baos.toByteArray(); baos.close(); } long endTime = System.currentTimeMillis(); LOGGER.debug("builder.save took " + (endTime - startTime) + " milliseconds"); if (download) { MediaType responseType = responseImageTypeDto.getMediaType(); responseHeaders.setContentType(responseType); responseHeaders.add("Content-Disposition", "attachment; filename=" + "Aspose_BarCode_QRCodeGen." + responseType.getSubtype()); } return new ResponseEntity<byte[]>(imageInByte, responseHeaders, HttpStatus.CREATED); }
From source file:com.muk.services.api.impl.PayPalPaymentService.java
private String getTokenHeader() { final Cache cache = cacheManager.getCache(ServiceConstants.CacheNames.paymentApiTokenCache); final String token = "paypal"; ValueWrapper valueWrapper = cache.get(token); String cachedHeader = StringUtils.EMPTY; if (valueWrapper == null || valueWrapper.get() == null) { try {//from w w w .j a v a2s . c o m final String value = securityCfgService.getPayPalClientId() + ":" + keystoreService.getPBEKey(securityCfgService.getPayPalClientId()); final HttpHeaders headers = new HttpHeaders(); headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON_UTF8)); headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); headers.add(HttpHeaders.AUTHORIZATION, "Basic " + nonceService.encode(value.getBytes(StandardCharsets.UTF_8))); final MultiValueMap<String, String> body = new LinkedMultiValueMap<String, String>(); body.add("grant_type", "client_credentials"); final HttpEntity<MultiValueMap<String, String>> request = new HttpEntity<MultiValueMap<String, String>>( body, headers); final ResponseEntity<JsonNode> response = restTemplate.postForEntity( securityCfgService.getPayPalUri() + "/oauth2/token", request, JsonNode.class); cache.put(token, response.getBody().get("access_token").asText()); valueWrapper = cache.get(token); cachedHeader = (String) valueWrapper.get(); } catch (final IOException ioEx) { LOG.error("Failed read keystore", ioEx); cachedHeader = StringUtils.EMPTY; } catch (final GeneralSecurityException secEx) { LOG.error("Failed to get key", secEx); cachedHeader = StringUtils.EMPTY; } } else { cachedHeader = (String) valueWrapper.get(); } return "Bearer " + cachedHeader; }
From source file:com.muk.services.api.impl.PayPalPaymentService.java
private ResponseEntity<JsonNode> send(String path, JsonNode payload) { final HttpHeaders headers = new HttpHeaders(); headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); headers.setContentType(MediaType.APPLICATION_JSON); headers.add(HttpHeaders.AUTHORIZATION, getTokenHeader()); return restTemplate.postForEntity(securityCfgService.getPayPalUri() + path, new HttpEntity<JsonNode>(payload, headers), JsonNode.class); }
From source file:com.muk.services.api.impl.StripePaymentService.java
private ResponseEntity<JsonNode> send(String path, JsonNode payload) { final HttpHeaders headers = new HttpHeaders(); headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); headers.add(HttpHeaders.AUTHORIZATION, getTokenHeader()); final MultiValueMap<String, String> body = new LinkedMultiValueMap<String, String>(); final Iterator<Entry<String, JsonNode>> nodes = payload.fields(); while (nodes.hasNext()) { final Map.Entry<String, JsonNode> entry = nodes.next(); if (entry.getValue().isObject()) { final String key = entry.getKey(); final Iterator<Entry<String, JsonNode>> metadataNodes = entry.getValue().fields(); while (metadataNodes.hasNext()) { final Map.Entry<String, JsonNode> element = metadataNodes.next(); body.add(key + "[\"" + element.getKey() + "\"]", element.getValue().asText()); }/*www . j a va 2s. c om*/ } else { body.add(entry.getKey(), entry.getValue().asText()); } } return restTemplate.postForEntity(securityCfgService.getStripeUri() + path, new HttpEntity<MultiValueMap<String, String>>(body, headers), JsonNode.class); }
From source file:com.muk.services.security.DefaultUaaLoginService.java
@SuppressWarnings("unchecked") @Override// ww w .jav a 2s .com public Map<String, Object> loginForClient(String username, String password, String clientId, UriComponents inUrlComponents) { final Map<String, Object> responsePayload = new HashMap<String, Object>(); final HttpHeaders headers = new HttpHeaders(); headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON_UTF8)); final UriComponentsBuilder uriBuilder = UriComponentsBuilder.fromUriString(cfgService.getOauthServer()); // login for csrf final UriComponents loginUri = uriBuilder.cloneBuilder().pathSegment("login").build(); ResponseEntity<String> response = exchangeForType(loginUri.toUriString(), HttpMethod.GET, null, headers, String.class); final List<String> cookies = new ArrayList<String>(); cookies.addAll(response.getHeaders().get(HttpHeaders.SET_COOKIE)); final MultiValueMap<String, String> formData = new LinkedMultiValueMap<>(); formData.add("username", username); formData.add("password", password); formData.add(CSRF, getCsrf(cookies)); headers.put(HttpHeaders.COOKIE, translateInToOutCookies(cookies)); headers.add(HttpHeaders.REFERER, loginUri.toUriString()); // login.do response = exchangeForType(uriBuilder.cloneBuilder().pathSegment("login.do").build().toUriString(), HttpMethod.POST, formData, headers, String.class); if (response.getStatusCode() != HttpStatus.FOUND || response.getHeaders().getFirst(HttpHeaders.LOCATION).contains("login")) { responsePayload.put("error", "bad credentials"); return responsePayload; } removeCookie(cookies, "X-Uaa-Csrf"); cookies.addAll(response.getHeaders().get(HttpHeaders.SET_COOKIE)); removeExpiredCookies(cookies); headers.remove(HttpHeaders.REFERER); headers.put(HttpHeaders.COOKIE, translateInToOutCookies(cookies)); // authorize final ResponseEntity<JsonNode> authResponse = exchangeForType( uriBuilder.cloneBuilder().pathSegment("oauth").pathSegment("authorize") .queryParam("response_type", "code").queryParam("client_id", clientId) .queryParam("redirect_uri", inUrlComponents.toUriString()).build().toUriString(), HttpMethod.GET, null, headers, JsonNode.class); if (authResponse.getStatusCode() == HttpStatus.OK) { removeCookie(cookies, "X-Uaa-Csrf"); cookies.addAll(authResponse.getHeaders().get(HttpHeaders.SET_COOKIE)); // return approval data final List<HttpCookie> parsedCookies = new ArrayList<HttpCookie>(); for (final String cookie : cookies) { parsedCookies.add(HttpCookie.parse(cookie).get(0)); } responsePayload.put(HttpHeaders.SET_COOKIE, new ArrayList<String>()); for (final HttpCookie parsedCookie : parsedCookies) { if (!parsedCookie.getName().startsWith("Saved-Account")) { parsedCookie.setPath(inUrlComponents.getPath()); ((List<String>) responsePayload.get(HttpHeaders.SET_COOKIE)) .add(httpCookieToString(parsedCookie)); } } responsePayload.put("json", authResponse.getBody()); } else { // get auth_code from Location Header responsePayload.put("code", authResponse.getHeaders().getLocation().getQuery().split("=")[1]); } return responsePayload; }
From source file:com.muk.services.security.DefaultUaaLoginService.java
@Override public String approveClient(String approvalQuery, String cookie) { final UriComponentsBuilder uriBuilder = UriComponentsBuilder.fromUriString(cfgService.getOauthServer()); final HttpHeaders headers = new HttpHeaders(); headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON_UTF8)); final StringTokenizer cookieTokenizer = new StringTokenizer(cookie, "; "); while (cookieTokenizer.hasMoreTokens()) { headers.add(HttpHeaders.COOKIE, cookieTokenizer.nextToken()); }//from w ww .ja va2 s. c o m final MultiValueMap<String, String> formData = new LinkedMultiValueMap<String, String>(); for (final String pair : approvalQuery.split("&")) { final String[] nv = pair.split("="); formData.add(nv[0], nv[1]); } formData.add("X-Uaa-Csrf", getCsrf(headers.get(HttpHeaders.COOKIE))); final UriComponents loginUri = uriBuilder.cloneBuilder().pathSegment("oauth").pathSegment("authorize") .build(); final ResponseEntity<String> response = exchangeForType(loginUri.toUriString(), HttpMethod.POST, formData, headers, String.class); if (approvalQuery.contains("false")) { return null; // approval declined. } // accepted, but location contains error if (response.getHeaders().getLocation().getQuery().startsWith("error")) { throw new HttpClientErrorException(HttpStatus.UNAUTHORIZED, response.getHeaders().getLocation().getQuery()); } // accepted with related auth code return response.getHeaders().getLocation().getQuery().split("=")[1]; }