diff --git a/cloudfoundry-client-reactor/src/test/java/org/cloudfoundry/reactor/uaa/users/ReactorUsersTest.java b/cloudfoundry-client-reactor/src/test/java/org/cloudfoundry/reactor/uaa/users/ReactorUsersTest.java index f5dccf50794..eff28639bdb 100644 --- a/cloudfoundry-client-reactor/src/test/java/org/cloudfoundry/reactor/uaa/users/ReactorUsersTest.java +++ b/cloudfoundry-client-reactor/src/test/java/org/cloudfoundry/reactor/uaa/users/ReactorUsersTest.java @@ -46,6 +46,7 @@ import org.cloudfoundry.uaa.users.UserId; import org.cloudfoundry.uaa.users.VerifyUserRequest; import org.cloudfoundry.uaa.users.VerifyUserResponse; +import org.cloudfoundry.uaa.users.PhoneNumber; import org.junit.Test; import reactor.test.StepVerifier; @@ -120,6 +121,9 @@ public void create() { .value("ZO6FEI@test.org") .primary(true) .build()) + .phoneNumber(PhoneNumber.builder() + .value("5555555555") + .build()) .active(true) .verified(true) .origin("") @@ -143,6 +147,9 @@ public void create() { .value("ZO6FEI@test.org") .primary(false) .build()) + .phoneNumber(PhoneNumber.builder() + .value("5555555555") + .build()) .group(Group.builder() .value("4622c5e1-ddfd-4e17-9e81-2ae3c03972be") .display("password.write") @@ -606,6 +613,9 @@ public void update() { .primary(false) .value("oH4jON@test.org") .build()) + .phoneNumber(PhoneNumber.builder() + .value("5555555555") + .build()) .externalId("test-user") .id(("test-user-id")) .version("*") @@ -640,6 +650,9 @@ public void update() { .primary(false) .value("oH4jON@test.org") .build()) + .phoneNumber(PhoneNumber.builder() + .value("5555555555") + .build()) .externalId("test-user") .group(Group.builder() .display("password.write") diff --git a/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/POST_request.json b/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/POST_request.json index 63ff5bf6d01..6697652b50b 100644 --- a/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/POST_request.json +++ b/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/POST_request.json @@ -11,6 +11,11 @@ "primary": true } ], + "phoneNumbers": [ + { + "value": "5555555555" + } + ], "active": true, "verified": true, "origin": "", diff --git a/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/POST_response.json b/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/POST_response.json index c22e27de931..beedb99e08e 100644 --- a/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/POST_response.json +++ b/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/POST_response.json @@ -17,6 +17,11 @@ "primary": false } ], + "phoneNumbers": [ + { + "value": "5555555555" + } + ], "groups": [ { "value": "4622c5e1-ddfd-4e17-9e81-2ae3c03972be", diff --git a/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/PUT_{id}_request.json b/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/PUT_{id}_request.json index 54117225a46..4ca10b700d4 100644 --- a/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/PUT_{id}_request.json +++ b/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/PUT_{id}_request.json @@ -6,6 +6,11 @@ "primary": false } ], + "phoneNumbers": [ + { + "value": "5555555555" + } + ], "externalId": "test-user", "name": { "familyName": "family name", diff --git a/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/PUT_{id}_response.json b/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/PUT_{id}_response.json index 0811917078b..91acbfc30d6 100644 --- a/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/PUT_{id}_response.json +++ b/cloudfoundry-client-reactor/src/test/resources/fixtures/uaa/users/PUT_{id}_response.json @@ -25,6 +25,11 @@ "primary": false } ], + "phoneNumbers": [ + { + "value": "5555555555" + } + ], "externalId": "test-user", "groups": [ { diff --git a/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/AbstractUserSummary.java b/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/AbstractUserSummary.java index 5c83e082689..6a0c18b2e28 100644 --- a/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/AbstractUserSummary.java +++ b/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/AbstractUserSummary.java @@ -88,4 +88,10 @@ public abstract class AbstractUserSummary extends AbstractUserId { @JsonProperty("zoneId") public abstract String getZoneId(); + /** + * The phone numbers for the user + */ + @JsonProperty("phoneNumbers") + public abstract List getPhoneNumbers(); + } diff --git a/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_CreateUserRequest.java b/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_CreateUserRequest.java index 38d32e16a4a..2581366eb2e 100644 --- a/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_CreateUserRequest.java +++ b/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_CreateUserRequest.java @@ -92,4 +92,11 @@ void check() { @Nullable abstract Boolean getVerified(); + /** + * The phone number + */ + @JsonProperty("phoneNumbers") + @Nullable + abstract List getPhoneNumbers(); + } diff --git a/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_PhoneNumber.java b/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_PhoneNumber.java new file mode 100644 index 00000000000..7823b8063c0 --- /dev/null +++ b/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_PhoneNumber.java @@ -0,0 +1,36 @@ +/* + * Copyright 2013-2017 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.cloudfoundry.uaa.users; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import org.immutables.value.Value; + +/** + * The email addresses for a user + */ +@JsonDeserialize +@Value.Immutable +abstract class _PhoneNumber { + + /** + * The phone number + */ + @JsonProperty("value") + abstract String getValue(); + +} diff --git a/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_UpdateUserRequest.java b/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_UpdateUserRequest.java index 81c57656ef4..2cb4bfbc6c8 100644 --- a/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_UpdateUserRequest.java +++ b/cloudfoundry-client/src/main/java/org/cloudfoundry/uaa/users/_UpdateUserRequest.java @@ -102,4 +102,10 @@ void check() { @Nullable abstract Boolean getVerified(); + /** + * The phone numbers for the user + */ + @JsonProperty("phoneNumbers") + abstract List getPhoneNumbers(); + }