From c137b87ddbf38430ec7e5672bd455d6ed3b213c0 Mon Sep 17 00:00:00 2001 From: NickJosevski Date: Fri, 29 Mar 2019 11:52:58 +1100 Subject: [PATCH 1/2] lets be precise what's missing --- ...PublicSurfaceAreaShouldNotRegress..NETCore.approved.txt | 3 ++- ...cSurfaceAreaShouldNotRegress..NETFramework.approved.txt | 3 ++- source/Octopus.Client/Model/UserPermissionSetResource.cs | 7 ++++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETCore.approved.txt b/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETCore.approved.txt index f19912561..33874088b 100644 --- a/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETCore.approved.txt +++ b/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETCore.approved.txt @@ -4355,7 +4355,8 @@ Octopus.Client.Model Octopus.Client.Model.Resource { .ctor() - Boolean IsComplete { get; set; } + Boolean IsPermissionsComplete { get; set; } + Boolean IsTeamsComplete { get; set; } Dictionary> SpacePermissions { get; set; } List SystemPermissions { get; set; } List Teams { get; set; } diff --git a/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETFramework.approved.txt b/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETFramework.approved.txt index 9dd440f98..3103234bb 100644 --- a/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETFramework.approved.txt +++ b/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETFramework.approved.txt @@ -4376,7 +4376,8 @@ Octopus.Client.Model Octopus.Client.Model.Resource { .ctor() - Boolean IsComplete { get; set; } + Boolean IsPermissionsComplete { get; set; } + Boolean IsTeamsComplete { get; set; } Dictionary> SpacePermissions { get; set; } List SystemPermissions { get; set; } List Teams { get; set; } diff --git a/source/Octopus.Client/Model/UserPermissionSetResource.cs b/source/Octopus.Client/Model/UserPermissionSetResource.cs index a2e538a83..7f773e353 100644 --- a/source/Octopus.Client/Model/UserPermissionSetResource.cs +++ b/source/Octopus.Client/Model/UserPermissionSetResource.cs @@ -30,9 +30,14 @@ public class UserPermissionSetResource : Resource /// public List Teams { get; set; } + /// + /// If the requesting user had sufficient access to see a complete view of the teams that may drive permissions + /// + public bool IsTeamsComplete { get; set; } + /// /// If the requesting user had sufficient access to see a complete view of the permissions /// - public bool IsComplete { get; set; } + public bool IsPermissionsComplete { get; set; } } } \ No newline at end of file From f9cd4d6f7f093e73ecb9fb36993e08b1d7dd4d95 Mon Sep 17 00:00:00 2001 From: NickJosevski Date: Fri, 29 Mar 2019 15:03:09 +1100 Subject: [PATCH 2/2] permission config route on client --- ...blicSurfaceAreaShouldNotRegress..NETCore.approved.txt | 2 ++ ...urfaceAreaShouldNotRegress..NETFramework.approved.txt | 2 ++ .../Repositories/Async/UserPermissionsRepository.cs | 9 ++++++++- .../Repositories/UserPermissionsRepository.cs | 9 ++++++++- 4 files changed, 20 insertions(+), 2 deletions(-) diff --git a/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETCore.approved.txt b/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETCore.approved.txt index 33874088b..ab8c29e4b 100644 --- a/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETCore.approved.txt +++ b/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETCore.approved.txt @@ -6027,6 +6027,7 @@ Octopus.Client.Repositories { Stream Export(Octopus.Client.Model.UserPermissionSetResource) Octopus.Client.Model.UserPermissionSetResource Get(Octopus.Client.Model.UserResource) + Octopus.Client.Model.UserPermissionSetResource GetConfiguration(Octopus.Client.Model.UserResource) } interface IUserRepository Octopus.Client.Repositories.IPaginate @@ -6607,6 +6608,7 @@ Octopus.Client.Repositories.Async { Task Export(Octopus.Client.Model.UserPermissionSetResource) Task Get(Octopus.Client.Model.UserResource) + Task GetConfiguration(Octopus.Client.Model.UserResource) } interface IUserRepository Octopus.Client.Repositories.Async.IPaginate diff --git a/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETFramework.approved.txt b/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETFramework.approved.txt index 3103234bb..8a9d224c9 100644 --- a/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETFramework.approved.txt +++ b/source/Octopus.Client.Tests/PublicSurfaceAreaFixture.ThePublicSurfaceAreaShouldNotRegress..NETFramework.approved.txt @@ -6049,6 +6049,7 @@ Octopus.Client.Repositories { Stream Export(Octopus.Client.Model.UserPermissionSetResource) Octopus.Client.Model.UserPermissionSetResource Get(Octopus.Client.Model.UserResource) + Octopus.Client.Model.UserPermissionSetResource GetConfiguration(Octopus.Client.Model.UserResource) } interface IUserRepository Octopus.Client.Repositories.IPaginate @@ -6629,6 +6630,7 @@ Octopus.Client.Repositories.Async { Task Export(Octopus.Client.Model.UserPermissionSetResource) Task Get(Octopus.Client.Model.UserResource) + Task GetConfiguration(Octopus.Client.Model.UserResource) } interface IUserRepository Octopus.Client.Repositories.Async.IPaginate diff --git a/source/Octopus.Client/Repositories/Async/UserPermissionsRepository.cs b/source/Octopus.Client/Repositories/Async/UserPermissionsRepository.cs index 1acb06fbd..3c5773dea 100644 --- a/source/Octopus.Client/Repositories/Async/UserPermissionsRepository.cs +++ b/source/Octopus.Client/Repositories/Async/UserPermissionsRepository.cs @@ -11,6 +11,7 @@ public interface IUserPermissionsRepository : ICanExtendSpaceContext { Task Get(UserResource user); + Task GetConfiguration(UserResource user); Task Export(UserPermissionSetResource userPermissions); } @@ -31,7 +32,13 @@ public async Task Get(UserResource user) if (user == null) throw new ArgumentNullException(nameof(user)); return await Client.Get(user.Link("Permissions"), GetAdditionalQueryParameters()).ConfigureAwait(false); } - + + public async Task GetConfiguration(UserResource user) + { + if (user == null) throw new ArgumentNullException(nameof(user)); + return await Client.Get(user.Link("PermissionsConfiguration"), GetAdditionalQueryParameters()).ConfigureAwait(false); + } + public async Task Export(UserPermissionSetResource userPermissions) { if (userPermissions == null) throw new ArgumentNullException(nameof(userPermissions)); diff --git a/source/Octopus.Client/Repositories/UserPermissionsRepository.cs b/source/Octopus.Client/Repositories/UserPermissionsRepository.cs index b709ebbf9..f6c8a14a9 100644 --- a/source/Octopus.Client/Repositories/UserPermissionsRepository.cs +++ b/source/Octopus.Client/Repositories/UserPermissionsRepository.cs @@ -10,6 +10,7 @@ public interface IUserPermissionsRepository : ICanExtendSpaceContext { UserPermissionSetResource Get(UserResource user); + UserPermissionSetResource GetConfiguration(UserResource user); Stream Export(UserPermissionSetResource userPermissions); } @@ -30,7 +31,13 @@ public UserPermissionSetResource Get(UserResource user) if (user == null) throw new ArgumentNullException(nameof(user)); return Client.Get(user.Link("Permissions"), AdditionalQueryParameters); } - + + public UserPermissionSetResource GetConfiguration(UserResource user) + { + if (user == null) throw new ArgumentNullException(nameof(user)); + return Client.Get(user.Link("PermissionsConfiguration"), AdditionalQueryParameters); + } + public Stream Export(UserPermissionSetResource userPermissions) { if (userPermissions == null) throw new ArgumentNullException(nameof(userPermissions));