diff options
author | Øyvind Grønnesby <oyving@verizonmedia.com> | 2020-06-04 12:50:11 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-04 12:50:11 +0200 |
commit | ff3393a9a4492c37ec877859816ec1bd00c975cc (patch) | |
tree | 6dbecf0a083ee784a369aade754d97274a14f834 /controller-server | |
parent | 802eec5ff1466f2e599cbfeaf99f8e54d3b2f9d5 (diff) | |
parent | 7d3e25bac187092e1bd3623e3c56b086ca2a2f58 (diff) |
Merge pull request #13481 from vespa-engine/ogronnesby/add-hosted-accountant-to-user-api
Add the hostedAccountant to the user API roles
Diffstat (limited to 'controller-server')
3 files changed, 9 insertions, 5 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/user/UserApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/user/UserApiHandler.java index 9fc77e7653d..df6b77ccb9e 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/user/UserApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/user/UserApiHandler.java @@ -126,6 +126,10 @@ public class UserApiHandler extends LoggingRequestHandler { return response; } + private static final Set<RoleDefinition> hostedOperators = Set.of( + RoleDefinition.hostedOperator, + RoleDefinition.hostedSupporter, + RoleDefinition.hostedAccountant); private HttpResponse userMetadata(HttpRequest request) { @SuppressWarnings("unchecked") @@ -142,10 +146,9 @@ public class UserApiHandler extends LoggingRequestHandler { .sorted(Comparator.comparing(Role::definition).reversed()) .collect(Collectors.groupingBy(TenantRole::tenant, Collectors.toList())); - // List of operator roles, currently only one available, but possible to extend + // List of operator roles as defined in `hostedOperators` above List<Role> operatorRoles = roles.stream() - .filter(role -> role.definition().equals(RoleDefinition.hostedOperator) || - role.definition().equals(RoleDefinition.hostedSupporter)) + .filter(role -> hostedOperators.contains(role.definition())) .sorted(Comparator.comparing(Role::definition)) .collect(Collectors.toList()); diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/UserApiTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/UserApiTest.java index 51466e5b1e2..c066c50ca20 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/UserApiTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/UserApiTest.java @@ -201,7 +201,7 @@ public class UserApiTest extends ControllerContainerCloudTest { public void userMetadataTest() { ContainerTester tester = new ContainerTester(container, responseFiles); ControllerTester controller = new ControllerTester(tester); - Set<Role> operator = Set.of(Role.hostedOperator(), Role.hostedSupporter()); + Set<Role> operator = Set.of(Role.hostedOperator(), Role.hostedSupporter(), Role.hostedAccountant()); User user = new User("dev@domail", "Joe Developer", "dev", null); tester.assertResponse(request("/api/user/v1/user") diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/responses/user-without-applications.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/responses/user-without-applications.json index 34fff84f3da..bc702f02150 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/responses/user-without-applications.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/user/responses/user-without-applications.json @@ -9,6 +9,7 @@ "tenants": {}, "operator": [ "hostedOperator", - "hostedSupporter" + "hostedSupporter", + "hostedAccountant" ] } |