Example usage for org.springframework.http HttpEntity HttpEntity

List of usage examples for org.springframework.http HttpEntity HttpEntity

Introduction

In this page you can find the example usage for org.springframework.http HttpEntity HttpEntity.

Prototype

public HttpEntity(@Nullable T body, @Nullable MultiValueMap<String, String> headers) 

Source Link

Document

Create a new HttpEntity with the given body and headers.

Usage

From source file:com.hybris.datahub.outbound.utils.RestTemplateUtil.java

/**
 * @param url/*  w ww .ja v a 2s .  co  m*/
 * @param content
 *           It must be json format data
 * @return Results <br>
 *         code : http status <br>
 *         responseBody : http response body
 */
public JsonObject post(final String url, final String content) {
    LOGGER.debug("Post url:" + url);

    final HttpEntity<String> request = new HttpEntity<String>(content, createHeaders());
    final ResponseEntity<String> entity = restTemplate.postForEntity(url, request, String.class);

    LOGGER.debug("Post data :" + content);
    LOGGER.debug("Post body:" + entity.getBody());

    JsonObject responseObject = new JsonObject();
    if (entity.getStatusCode().value() == 200) {
        String responseBody = entity.getBody();
        JsonParser parser = new JsonParser();
        responseObject = parser.parse(responseBody).getAsJsonObject();
    } else {
        responseObject.addProperty("code", entity.getStatusCode().toString());
        responseObject.addProperty("msg", entity.getBody());
    }
    return responseObject;
}

From source file:org.keycloak.adapters.springsecurity.service.KeycloakDirectAccessGrantService.java

@Override
public RefreshableKeycloakSecurityContext login(String username, String password) throws VerificationException {

    final MultiValueMap<String, String> body = new LinkedMultiValueMap<>();
    final HttpHeaders headers = new HttpHeaders();

    headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
    headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
    body.set("username", username);
    body.set("password", password);
    body.set(OAuth2Constants.GRANT_TYPE, OAuth2Constants.PASSWORD);

    AccessTokenResponse response = template.postForObject(keycloakDeployment.getTokenUrl(),
            new HttpEntity<>(body, headers), AccessTokenResponse.class);

    return KeycloakSpringAdapterUtils.createKeycloakSecurityContext(keycloakDeployment, response);
}

From source file:client.ServiceRequester.java

public HttpEntity<byte[]> createRequestHeaders(BufferedImage image) {
    byte[] imageBytes = ((DataBufferByte) image.getRaster().getDataBuffer()).getData();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<String, String>();

    headers.add("imageType", String.valueOf(image.getType()));
    headers.add("imageWidth", String.valueOf(image.getWidth()));
    headers.add("imageHeight", String.valueOf(image.getHeight()));

    return new HttpEntity<byte[]>(imageBytes, headers);
}

From source file:eu.cloudwave.wp5.monitoring.rest.FeedbackHandlerMonitoringClient.java

/**
 * Sends monitoring data (i.e. the call trace) and its attached metrics to the Feedback Handler.
 * /*from w  w w.jav  a2  s  . c  o m*/
 * @param executions
 *          the {@link RunningProcedureExecution}'s (i.e. the call trace)
 * @return <code>true</code> if the data has been successfully sent to the Feedback Handler, <code>false</code>
 *         otherwise
 */
public boolean postData(final RunningProcedureExecution rootProcedureExecution) {
    final MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add(Headers.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE);
    headers.add(Headers.ACCESS_TOKEN, accessToken());
    headers.add(Headers.APPLICATION_ID, applicationId());
    final HttpEntity<MetricContainingProcedureExecutionDto> httpEntity = new HttpEntity<MetricContainingProcedureExecutionDto>(
            rootProcedureExecution, headers);
    final ResponseEntity<Boolean> result = new RestTemplate().exchange(url(), HttpMethod.POST, httpEntity,
            Boolean.class);
    return result.getBody();
}

From source file:com.logaritex.hadoop.configuration.manager.SimpleHttpService.java

@Override
public <R> R post(String url, Object request, Class<R> responseType, Object... uriVariables) {

    R response = restTemplate.exchange(baseUrl + url, HttpMethod.POST,
            new HttpEntity<Object>(request, httpHeaders), responseType, uriVariables).getBody();

    return response;
}

From source file:de.codecentric.boot.admin.services.ApplicationRegistrator.java

/**
 * Registers the client application at spring-boot-admin-server.
 *
 * @return true if successful registration on at least one admin server
 *///w  w w  . j a  v a 2 s .c  om
public boolean register() {
    boolean isRegistrationSuccessful = false;
    Application self = createApplication();
    for (String adminUrl : admin.getAdminUrl()) {
        try {
            @SuppressWarnings("rawtypes")
            ResponseEntity<Map> response = template.postForEntity(adminUrl,
                    new HttpEntity<>(self, HTTP_HEADERS), Map.class);

            if (response.getStatusCode().equals(HttpStatus.CREATED)) {
                if (registeredId.compareAndSet(null, response.getBody().get("id").toString())) {
                    LOGGER.info("Application registered itself as {}", response.getBody());
                } else {
                    LOGGER.debug("Application refreshed itself as {}", response.getBody());
                }

                isRegistrationSuccessful = true;
                if (admin.isRegisterOnce()) {
                    break;
                }
            } else {
                LOGGER.warn("Application failed to registered itself as {}. Response: {}", self,
                        response.toString());
            }
        } catch (Exception ex) {
            LOGGER.warn("Failed to register application as {} at spring-boot-admin ({}): {}", self,
                    admin.getAdminUrl(), ex.getMessage());
        }
    }

    return isRegistrationSuccessful;
}

From source file:org.schedoscope.metascope.controller.MetascopeDataDistributionControllerTest.java

@Test
public void sometest() throws Exception {
    HttpHeaders headers = new HttpHeaders();
    headers.set("Referer", "/test");

    HttpEntity<String> entity = new HttpEntity<String>("parameters", headers);

    ResponseEntity<String> response = this.restTemplate.exchange("/datadistribution/start?fqdn=test",
            HttpMethod.POST, entity, String.class);
    assertEquals(302, response.getStatusCodeValue());
    assertTrue(response.getHeaders().get("Location").get(0).endsWith("/test#datadistributionContent"));
}

From source file:guru.nidi.ramltester.RestTemplateTest.java

@RequestMapping(value = "/data")
@ResponseBody//from w w w. j ava 2 s  .  c  om
public HttpEntity<String> test(@RequestParam(required = false) String param) {
    final HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_JSON);
    return new HttpEntity<>(param == null ? "\"json string\"" : "illegal json", headers);
}

From source file:cz.muni.fi.mushroomhunter.restclient.MushroomCreateSwingWorker.java

@Override
protected Void doInBackground() throws Exception {
    MushroomDto mushroomDto = new MushroomDto();
    mushroomDto.setName(restClient.getTfMushroomName().getText());

    mushroomDto.setType(cz.fi.muni.pa165.mushroomhunter.api.Type
            .valueOf(restClient.getComboBoxMushroomType().getSelectedItem().toString()));

    //to create date object only month is used, day and year are fixed values
    String dateInString = restClient.getComboBoxMushroomStartOfOccurence().getSelectedItem().toString()
            + " 1, 2000";

    SimpleDateFormat formatter = new SimpleDateFormat("MMMM d, yyyy", new Locale("en_US"));

    mushroomDto.setStartOfOccurence(formatter.parse(dateInString));

    //to create date object only month is used, day and year are fixed values
    dateInString = restClient.getComboBoxMushroomEndOfOccurence().getSelectedItem().toString() + " 1, 2000";
    mushroomDto.setEndOfOccurence(formatter.parse(dateInString));

    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_JSON);
    List<MediaType> mediaTypeList = new ArrayList<>();
    mediaTypeList.add(MediaType.ALL);/*from  w  ww.java  2s. co  m*/
    headers.setAccept(mediaTypeList);

    ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter();
    String json = ow.writeValueAsString(mushroomDto);

    String plainCreds = RestClient.USER_NAME + ":" + RestClient.PASSWORD;
    byte[] plainCredsBytes = plainCreds.getBytes();
    byte[] base64CredsBytes = Base64.encodeBase64(plainCredsBytes);
    String base64Creds = new String(base64CredsBytes);

    headers.add("Authorization", "Basic " + base64Creds);

    HttpEntity request = new HttpEntity(json, headers);

    RestTemplate restTemplate = new RestTemplate();
    Long[] result = restTemplate.postForObject(RestClient.SERVER_URL + "pa165/rest/mushroom", request,
            Long[].class);

    System.out.println("Id of the created mushroom: " + result[0]);
    RestClient.getMushroomIDs().add(result[0]);
    return null;
}

From source file:de.hybris.platform.marketplaceintegrationbackoffice.utils.MarketplaceintegrationbackofficeRestTemplateUtil.java

/**
 * @param url/*w ww .  j  a v  a  2 s.c  o m*/
 * @param content
 *           It must be json format data
 * @return Results <br>
 *         code : http status <br>
 *         responseBody : http response body
 */
public JSONObject post(final String url, final String content) {
    LOGGER.debug("Post url:" + url);

    final HttpEntity<String> request = new HttpEntity<String>(content, createHeaders());
    final ResponseEntity<String> entity = restTemplate.postForEntity(url, request, String.class);

    LOGGER.debug("Post content :" + content);
    LOGGER.debug("Response body:" + entity.getBody());

    JSONObject responseObject = new JSONObject();
    if (entity.getStatusCode().value() == 200) {
        final String responseBody = entity.getBody();
        final JSONParser parser = new JSONParser();
        responseObject = (JSONObject) parser.parse(responseBody);
    } else {
        responseObject.put("code", entity.getStatusCode().toString());
        responseObject.put("msg", entity.getBody());
    }
    return responseObject;
}