Example usage for org.springframework.util MultiValueMap add

List of usage examples for org.springframework.util MultiValueMap add

Introduction

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

Prototype

void add(K key, @Nullable V value);

Source Link

Document

Add the given single value to the current list of values for the given key.

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  ww .j  av  a2  s  . c om
}

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);
    }//w  w w .  jav a 2s  . c o  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 v a  2  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 ww w .ja v a 2 s .  com
    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  2  s.c  om
    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);
    }//from w  ww .j  a  v  a2s .c  om
    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// w w w .  ja v a  2  s . co  m
        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  www  .  ja va  2s. c  om
    }
    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) {//from  ww w  .  ja v a2  s.  c  o  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());
}