Example usage for org.springframework.util LinkedMultiValueMap LinkedMultiValueMap

List of usage examples for org.springframework.util LinkedMultiValueMap LinkedMultiValueMap

Introduction

In this page you can find the example usage for org.springframework.util LinkedMultiValueMap LinkedMultiValueMap.

Prototype

public LinkedMultiValueMap() 

Source Link

Document

Create a new LinkedMultiValueMap that wraps a LinkedHashMap .

Usage

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

public static void deleteUser(String zoneAdminToken, String url, String userId) {

    RestTemplate template = new RestTemplate();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + zoneAdminToken);
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    HttpEntity deleteHeaders = new HttpEntity(headers);
    ResponseEntity<String> userDelete = template.exchange(url + "/Users/" + userId, HttpMethod.DELETE,
            deleteHeaders, String.class);
    if (userDelete.getStatusCode() != HttpStatus.OK) {
        throw new RuntimeException("Invalid return code:" + userDelete.getStatusCode());
    }/*w w  w .  j  a v a2 s  . com*/
}

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

public static ScimGroup getGroup(String token, String zoneId, String url, String displayName) {
    RestTemplate template = new RestTemplate();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + token);
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    if (StringUtils.hasText(zoneId)) {
        headers.add(IdentityZoneSwitchingFilter.HEADER, zoneId);
    }//ww  w  . j a va  2s . co m
    ResponseEntity<SearchResults<ScimGroup>> findGroup = template.exchange(
            url + "/Groups?filter=displayName eq \"{groupId}\"", HttpMethod.GET, new HttpEntity(headers),
            new ParameterizedTypeReference<SearchResults<ScimGroup>>() {
            }, displayName);
    if (findGroup.getBody().getTotalResults() == 0) {
        return null;
    } else {
        return findGroup.getBody().getResources().iterator().next();
    }
}

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

public static ScimGroup createGroup(String token, String zoneId, String url, ScimGroup group) {
    RestTemplate template = new RestTemplate();
    template.setErrorHandler(fiveHundredErrorHandler);
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + token);
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    if (StringUtils.hasText(zoneId)) {
        headers.add(IdentityZoneSwitchingFilter.HEADER, zoneId);
    }/* w  w  w .j  a  va2 s  .co  m*/
    ResponseEntity<ScimGroup> createGroup = template.exchange(url + "/Groups", HttpMethod.POST,
            new HttpEntity(JsonUtils.writeValueAsBytes(group), headers), ScimGroup.class);
    assertEquals(HttpStatus.CREATED, createGroup.getStatusCode());
    return createGroup.getBody();
}

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

public static ScimGroup updateGroup(String token, String zoneId, String url, ScimGroup group) {
    RestTemplate template = new RestTemplate();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + token);
    headers.add("If-Match", "*");
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    if (StringUtils.hasText(zoneId)) {
        headers.add(IdentityZoneSwitchingFilter.HEADER, zoneId);
    }/*from www .j  ava  2s. c o  m*/
    ResponseEntity<ScimGroup> updateGroup = template.exchange(url + "/Groups/{groupId}", HttpMethod.PUT,
            new HttpEntity(JsonUtils.writeValueAsBytes(group), headers), ScimGroup.class, group.getId());
    assertEquals(HttpStatus.OK, updateGroup.getStatusCode());
    return updateGroup.getBody();
}

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

public static ScimGroupExternalMember mapExternalGroup(String token, String zoneId, String url,
        ScimGroupExternalMember scimGroup) {

    RestTemplate template = new RestTemplate();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + token);
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    if (StringUtils.hasText(zoneId)) {
        headers.add(IdentityZoneSwitchingFilter.HEADER, zoneId);
    }/*from w w w  .j  a v  a 2s  . co m*/
    ResponseEntity<ScimGroupExternalMember> mapGroup = template.exchange(url + "/Groups/External",
            HttpMethod.POST, new HttpEntity(JsonUtils.writeValueAsBytes(scimGroup), headers),
            ScimGroupExternalMember.class);
    if (HttpStatus.CREATED.equals(mapGroup.getStatusCode())) {
        return mapGroup.getBody();
    } else if (HttpStatus.CONFLICT.equals(mapGroup.getStatusCode())) {
        return scimGroup;
    }
    throw new IllegalArgumentException("Invalid status code:" + mapGroup.getStatusCode());
}

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

public static BaseClientDetails createClientAsZoneAdmin(String zoneAdminToken, String url, String zoneId,
        BaseClientDetails client) throws Exception {

    RestTemplate template = new RestTemplate();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + zoneAdminToken);
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    headers.add(IdentityZoneSwitchingFilter.HEADER, zoneId);
    HttpEntity getHeaders = new HttpEntity(JsonUtils.writeValueAsBytes(client), headers);
    ResponseEntity<String> clientCreate = template.exchange(url + "/oauth/clients", HttpMethod.POST, getHeaders,
            String.class);
    if (clientCreate.getStatusCode() == HttpStatus.CREATED) {
        return JsonUtils.readValue(clientCreate.getBody(), BaseClientDetails.class);
    }/* w ww .  ja v  a  2  s  .com*/
    throw new RuntimeException("Invalid return code:" + clientCreate.getStatusCode());
}

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

public static BaseClientDetails createOrUpdateClient(String adminToken, String url, String switchToZoneId,
        BaseClientDetails client) throws Exception {

    RestTemplate template = new RestTemplate();
    template.setErrorHandler(new DefaultResponseErrorHandler() {
        @Override/*from   w  w  w . ja va2 s . c  om*/
        protected boolean hasError(HttpStatus statusCode) {
            return statusCode.is5xxServerError();
        }
    });
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + adminToken);
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    if (StringUtils.hasText(switchToZoneId)) {
        headers.add(IdentityZoneSwitchingFilter.HEADER, switchToZoneId);
    }
    HttpEntity getHeaders = new HttpEntity(JsonUtils.writeValueAsBytes(client), headers);
    ResponseEntity<String> clientCreate = template.exchange(url + "/oauth/clients", HttpMethod.POST, getHeaders,
            String.class);
    if (clientCreate.getStatusCode() == HttpStatus.CREATED) {
        return JsonUtils.readValue(clientCreate.getBody(), BaseClientDetails.class);
    } else if (clientCreate.getStatusCode() == HttpStatus.CONFLICT) {
        HttpEntity putHeaders = new HttpEntity(JsonUtils.writeValueAsBytes(client), headers);
        ResponseEntity<String> clientUpdate = template.exchange(url + "/oauth/clients/" + client.getClientId(),
                HttpMethod.PUT, putHeaders, String.class);
        if (clientUpdate.getStatusCode() == HttpStatus.OK) {
            return JsonUtils.readValue(clientCreate.getBody(), BaseClientDetails.class);
        } else {
            throw new RuntimeException("Invalid update return code:" + clientUpdate.getStatusCode());
        }
    }
    throw new RuntimeException("Invalid crete return code:" + clientCreate.getStatusCode());
}

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

public static List<IdentityProvider> getProviders(String zoneAdminToken, String url, String zoneId) {
    RestTemplate client = new RestTemplate();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + zoneAdminToken);
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    headers.add(IdentityZoneSwitchingFilter.HEADER, zoneId);
    HttpEntity getHeaders = new HttpEntity(headers);
    ResponseEntity<String> providerGet = client.exchange(url + "/identity-providers", HttpMethod.GET,
            getHeaders, String.class);
    if (providerGet != null && providerGet.getStatusCode() == HttpStatus.OK) {
        return JsonUtils.readValue(providerGet.getBody(), new TypeReference<List<IdentityProvider>>() {
        });//from ww w . j  a v  a  2  s.c o m
    }
    return null;
}

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

public static void deleteProvider(String zoneAdminToken, String url, String zoneId, String originKey) {
    IdentityProvider provider = getProvider(zoneAdminToken, url, zoneId, originKey);
    RestTemplate client = new RestTemplate();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Authorization", "bearer " + zoneAdminToken);
    headers.add(IdentityZoneSwitchingFilter.HEADER, zoneId);
    HttpEntity getHeaders = new HttpEntity(headers);
    client.exchange(url + "/identity-providers/" + provider.getId(), HttpMethod.DELETE, getHeaders,
            String.class);
}

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

public static IdentityProvider createOrUpdateProvider(String accessToken, String url,
        IdentityProvider provider) {//  w w w  .  j av  a  2 s.co  m
    RestTemplate client = new RestTemplate();
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.add("Accept", APPLICATION_JSON_VALUE);
    headers.add("Authorization", "bearer " + accessToken);
    headers.add("Content-Type", APPLICATION_JSON_VALUE);
    headers.add(IdentityZoneSwitchingFilter.HEADER, provider.getIdentityZoneId());
    List<IdentityProvider> existing = getProviders(accessToken, url, provider.getIdentityZoneId());
    if (existing != null) {
        for (IdentityProvider p : existing) {
            if (p.getOriginKey().equals(provider.getOriginKey())
                    && p.getIdentityZoneId().equals(provider.getIdentityZoneId())) {
                provider.setId(p.getId());
                HttpEntity putHeaders = new HttpEntity(provider, headers);
                ResponseEntity<String> providerPut = client.exchange(url + "/identity-providers/{id}",
                        HttpMethod.PUT, putHeaders, String.class, provider.getId());
                if (providerPut.getStatusCode() == HttpStatus.OK) {
                    return JsonUtils.readValue(providerPut.getBody(), IdentityProvider.class);
                }
            }
        }
    }

    HttpEntity postHeaders = new HttpEntity(provider, headers);
    ResponseEntity<String> providerPost = client.exchange(url + "/identity-providers/{id}", HttpMethod.POST,
            postHeaders, String.class, provider.getId());
    if (providerPost.getStatusCode() == HttpStatus.CREATED) {
        return JsonUtils.readValue(providerPost.getBody(), IdentityProvider.class);
    }
    throw new IllegalStateException(
            "Invalid result code returned, unable to create identity provider:" + providerPost.getStatusCode());
}