Example usage for org.springframework.web.client RestOperations postForEntity

List of usage examples for org.springframework.web.client RestOperations postForEntity

Introduction

In this page you can find the example usage for org.springframework.web.client RestOperations postForEntity.

Prototype

<T> ResponseEntity<T> postForEntity(URI url, @Nullable Object request, Class<T> responseType)
        throws RestClientException;

Source Link

Document

Create a new resource by POSTing the given object to the URL, and returns the response as ResponseEntity .

Usage

From source file:org.trustedanalytics.metricsprovider.cloudadapter.RestOperationsHelpers.java

public static <T> ResponseEntity<T> postForEntityWithToken(RestOperations restTemplate, String token,
        String url, Object request, Class<T> type) {
    addAuthHeaderToTemplate(restTemplate, token);
    return restTemplate.postForEntity(url, request, type);
}

From source file:org.cloudfoundry.identity.uaa.integration.TestAccountSetup.java

private void createClient(RestOperations client, ClientDetails clientDetails) {
    ResponseEntity<String> response = client.postForEntity(serverRunning.getClientsUri(), clientDetails,
            String.class);
    assertEquals(HttpStatus.CREATED, response.getStatusCode());
}

From source file:org.cloudfoundry.identity.uaa.integration.TestAccountSetup.java

private void createUserAccount(RestOperations client) {
    ScimUser user = testAccounts.getUser();
    ResponseEntity<ScimUser> response = client.postForEntity(serverRunning.getUserUri(), user, ScimUser.class);
    Assert.state(response.getStatusCode() == HttpStatus.CREATED);
}

From source file:org.cloudfoundry.identity.uaa.integration.VmcScimUserEndpointIntegrationTests.java

@BeforeOAuth2Context
@OAuth2ContextConfiguration(OAuth2ContextConfiguration.ClientCredentials.class)
public void setUpUserAccounts() {

    // If running against vcap we don't want to run these tests because they create new user accounts
    // Assume.assumeTrue(!testAccounts.isProfileActive("vcap"));

    RestOperations client = serverRunning.getRestTemplate();

    ScimUser user = new ScimUser();
    user.setUserName(JOE);//from   w w  w .ja v a 2s. c o  m
    user.setName(new ScimUser.Name("Joe", "User"));
    user.addEmail("joe@blah.com");

    ResponseEntity<ScimUser> newuser = client.postForEntity(serverRunning.getUrl(usersEndpoint), user,
            ScimUser.class);

    joe = newuser.getBody();
    assertEquals(JOE, joe.getUserName());

    PasswordChangeRequest change = new PasswordChangeRequest();
    change.setPassword("password");

    HttpHeaders headers = new HttpHeaders();
    ResponseEntity<Void> result = client.exchange(serverRunning.getUrl(usersEndpoint) + "/{id}/password",
            HttpMethod.PUT, new HttpEntity<PasswordChangeRequest>(change, headers), null, joe.getId());
    assertEquals(HttpStatus.OK, result.getStatusCode());

    // The implicit grant for vmc requires extra parameters in the authorization request
    context.setParameters(Collections.singletonMap("credentials",
            testAccounts.getJsonCredentials(joe.getUserName(), "password")));

}

From source file:org.cloudfoundry.identity.uaa.integration.VmcUserIdTranslationEndpointIntegrationTests.java

@BeforeOAuth2Context
@OAuth2ContextConfiguration(OAuth2ContextConfiguration.ClientCredentials.class)
public void setUpUserAccounts() {

    // If running against vcap we don't want to run these tests because they create new user accounts
    // Assume.assumeTrue(!testAccounts.isProfileActive("vcap"));

    RestOperations client = serverRunning.getRestTemplate();

    ScimUser user = new ScimUser();
    user.setUserName(JOE);//w  w w  . j  a  v a2  s .c  o m
    user.setName(new ScimUser.Name("Joe", "User"));
    user.addEmail("joe@blah.com");
    user.setGroups(Arrays.asList(new Group(null, "uaa.user"), new Group(null, "orgs.foo")));

    ResponseEntity<ScimUser> newuser = client.postForEntity(serverRunning.getUrl(userEndpoint), user,
            ScimUser.class);

    joe = newuser.getBody();
    assertEquals(JOE, joe.getUserName());

    PasswordChangeRequest change = new PasswordChangeRequest();
    change.setPassword("password");

    HttpHeaders headers = new HttpHeaders();
    ResponseEntity<Void> result = client.exchange(serverRunning.getUrl(userEndpoint) + "/{id}/password",
            HttpMethod.PUT, new HttpEntity<PasswordChangeRequest>(change, headers), null, joe.getId());
    assertEquals(HttpStatus.OK, result.getStatusCode());

    // The implicit grant for vmc requires extra parameters in the authorization request
    context.setParameters(Collections.singletonMap("credentials",
            testAccounts.getJsonCredentials(joe.getUserName(), "password")));

}

From source file:org.cloudfoundry.identity.uaa.integration.LoginServerSecurityIntegrationTests.java

@BeforeOAuth2Context
@OAuth2ContextConfiguration(OAuth2ContextConfiguration.ClientCredentials.class)
public void setUpUserAccounts() {

    // If running against vcap we don't want to run these tests because they
    // create new user accounts
    Assume.assumeTrue(!testAccounts.isProfileActive("vcap"));

    RestOperations client = serverRunning.getRestTemplate();

    ScimUser user = new ScimUser();
    user.setPassword("password");
    user.setUserName(JOE);/*w  w  w  .j a  v  a2  s.co  m*/
    user.setName(new ScimUser.Name("Joe", "User"));
    user.addEmail("joe@blah.com");
    user.setVerified(true);

    userForLoginServer = new ScimUser();
    userForLoginServer.setPassword("password");
    userForLoginServer.setUserName(LOGIN_SERVER_JOE);
    userForLoginServer.setName(new ScimUser.Name("Joe_login_server", "User"));
    userForLoginServer.addEmail("joe_ls@blah.com");
    userForLoginServer.setVerified(true);
    userForLoginServer.setOrigin(LOGIN_SERVER);

    ResponseEntity<ScimUser> newuser = client.postForEntity(serverRunning.getUrl(userEndpoint), user,
            ScimUser.class);
    userForLoginServer = client
            .postForEntity(serverRunning.getUrl(userEndpoint), userForLoginServer, ScimUser.class).getBody();

    joe = newuser.getBody();
    assertEquals(JOE, joe.getUserName());

    PasswordChangeRequest change = new PasswordChangeRequest();
    change.setPassword("Passwo3d");

    HttpHeaders headers = new HttpHeaders();
    ResponseEntity<Void> result = client.exchange(serverRunning.getUrl(userEndpoint) + "/{id}/password",
            HttpMethod.PUT, new HttpEntity<PasswordChangeRequest>(change, headers), Void.class, joe.getId());
    assertEquals(HttpStatus.OK, result.getStatusCode());

    // The implicit grant for cf requires extra parameters in the
    // authorization request
    context.setParameters(Collections.singletonMap("credentials",
            testAccounts.getJsonCredentials(joe.getUserName(), "Passwo3d")));

}

From source file:org.cloudfoundry.identity.uaa.integration.util.IntegrationTestUtils.java

public static ScimUser createUnapprovedUser(ServerRunning serverRunning) throws Exception {
    String userName = "bob-" + new RandomValueStringGenerator().generate();
    String userEmail = userName + "@example.com";

    RestOperations restTemplate = serverRunning.getRestTemplate();

    ScimUser user = new ScimUser();
    user.setUserName(userName);/*from w  ww  . jav a 2 s .  co  m*/
    user.setPassword("s3Cretsecret");
    user.addEmail(userEmail);
    user.setActive(true);
    user.setVerified(true);

    ResponseEntity<ScimUser> result = restTemplate.postForEntity(serverRunning.getUrl("/Users"), user,
            ScimUser.class);
    assertEquals(HttpStatus.CREATED, result.getStatusCode());

    return user;
}

From source file:org.cloudfoundry.identity.uaa.test.TestAccountSetup.java

private void initializeUserAccount(RestOperations client) {

    if (this.user == null) {

        UaaUser user = testAccounts.getUserWithRandomID();
        @SuppressWarnings("rawtypes")
        ResponseEntity<Map> results = client.getForEntity(
                serverRunning.getUserUri() + "?filter=userName eq \"" + user.getUsername() + "\"", Map.class);
        assertEquals(HttpStatus.OK, results.getStatusCode());
        @SuppressWarnings("unchecked")
        List<Map<String, ?>> resources = (List<Map<String, ?>>) results.getBody().get("resources");
        Map<String, ?> map;
        if (!resources.isEmpty()) {
            map = resources.get(0);//w  w w  . j av a 2 s  .co  m
        } else {
            map = getUserAsMap(user);
            @SuppressWarnings("rawtypes")
            ResponseEntity<Map> response = client.postForEntity(serverRunning.getUserUri(), map, Map.class);
            Assert.state(response.getStatusCode() == HttpStatus.CREATED,
                    "User account not created: status was " + response.getStatusCode());
            @SuppressWarnings("unchecked")
            Map<String, ?> value = response.getBody();
            map = value;
        }
        this.user = getUserFromMap(map);

    }

}