Browse Source

Move permission management providers to upper layers.

pull/216/head
Halil İbrahim Kalkan 9 years ago
parent
commit
587de48ec2
  1. 1
      src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.csproj
  2. 4
      src/Volo.Abp.Identity.Application/Volo/Abp/Identity/AbpIdentityApplicationModule.cs
  3. 5
      src/Volo.Abp.Identity.Application/Volo/Abp/Identity/RolePermissionManagementProvider.cs
  4. 5
      src/Volo.Abp.Identity.Application/Volo/Abp/Identity/UserPermissionManagementProvider.cs
  5. 11
      src/Volo.Abp.Identity.Application/Volo/Abp/Permissions/RolePermissionManagerExtensions.cs
  6. 6
      src/Volo.Abp.Identity.Application/Volo/Abp/Permissions/UserPermissionManagerExtensions.cs

1
src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.csproj

@ -17,6 +17,7 @@
<ProjectReference Include="..\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj" /> <ProjectReference Include="..\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj" />
<ProjectReference Include="..\Volo.Abp.Identity.Application.Contracts\Volo.Abp.Identity.Application.Contracts.csproj" /> <ProjectReference Include="..\Volo.Abp.Identity.Application.Contracts\Volo.Abp.Identity.Application.Contracts.csproj" />
<ProjectReference Include="..\Volo.Abp.Identity.Domain\Volo.Abp.Identity.Domain.csproj" /> <ProjectReference Include="..\Volo.Abp.Identity.Domain\Volo.Abp.Identity.Domain.csproj" />
<ProjectReference Include="..\Volo.Abp.Session\Volo.Abp.Session.csproj" />
</ItemGroup> </ItemGroup>
</Project> </Project>

4
src/Volo.Abp.Identity.Application/Volo/Abp/Identity/AbpIdentityApplicationModule.cs

@ -1,13 +1,15 @@
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.AutoMapper; using Volo.Abp.AutoMapper;
using Volo.Abp.Modularity; using Volo.Abp.Modularity;
using Volo.Abp.Session;
namespace Volo.Abp.Identity namespace Volo.Abp.Identity
{ {
[DependsOn( [DependsOn(
typeof(AbpIdentityDomainModule), typeof(AbpIdentityDomainModule),
typeof(AbpIdentityApplicationContractsModule), typeof(AbpIdentityApplicationContractsModule),
typeof(AbpAutoMapperModule) typeof(AbpAutoMapperModule),
typeof(AbpSessionModule)
)] )]
public class AbpIdentityApplicationModule : AbpModule public class AbpIdentityApplicationModule : AbpModule
{ {

5
src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/RolePermissionManagementProvider.cs → src/Volo.Abp.Identity.Application/Volo/Abp/Identity/RolePermissionManagementProvider.cs

@ -4,14 +4,13 @@ using Volo.Abp.Authorization.Permissions;
using Volo.Abp.Guids; using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy; using Volo.Abp.MultiTenancy;
using Volo.Abp.Permissions; using Volo.Abp.Permissions;
using Volo.Abp.Session;
namespace Volo.Abp.Identity namespace Volo.Abp.Identity
{ {
public class RolePermissionManagementProvider : PermissionManagementProvider public class RolePermissionManagementProvider : PermissionManagementProvider
{ {
public const string ProviderName = "Role"; public override string Name => RolePermissionValueProvider.ProviderName;
public override string Name => ProviderName;
private readonly IIdentityUserRepository _identityUserRepository; private readonly IIdentityUserRepository _identityUserRepository;

5
src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/UserPermissionManagementProvider.cs → src/Volo.Abp.Identity.Application/Volo/Abp/Identity/UserPermissionManagementProvider.cs

@ -1,14 +1,13 @@
using Volo.Abp.Guids; using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy; using Volo.Abp.MultiTenancy;
using Volo.Abp.Permissions; using Volo.Abp.Permissions;
using Volo.Abp.Session;
namespace Volo.Abp.Identity namespace Volo.Abp.Identity
{ {
public class UserPermissionManagementProvider : PermissionManagementProvider public class UserPermissionManagementProvider : PermissionManagementProvider
{ {
public const string ProviderName = "User"; //TODO: Share a common string with UserPermissionValueProvider (same is true for the role) public override string Name => UserPermissionValueProvider.ProviderName;
public override string Name => ProviderName;
public UserPermissionManagementProvider(IPermissionGrantRepository public UserPermissionManagementProvider(IPermissionGrantRepository
permissionGrantRepository, permissionGrantRepository,

11
src/Volo.Abp.Identity.Domain/Volo/Abp/Permissions/RolePermissionManagerExtensions.cs → src/Volo.Abp.Identity.Application/Volo/Abp/Permissions/RolePermissionManagerExtensions.cs

@ -1,8 +1,7 @@
using System; using System.Collections.Generic;
using System.Collections.Generic;
using System.Threading.Tasks; using System.Threading.Tasks;
using JetBrains.Annotations; using JetBrains.Annotations;
using Volo.Abp.Identity; using Volo.Abp.Session;
namespace Volo.Abp.Permissions namespace Volo.Abp.Permissions
{ {
@ -12,21 +11,21 @@ namespace Volo.Abp.Permissions
{ {
Check.NotNull(permissionManager, nameof(permissionManager)); Check.NotNull(permissionManager, nameof(permissionManager));
return permissionManager.GetAsync(permissionName, RolePermissionManagementProvider.ProviderName, roleName); return permissionManager.GetAsync(permissionName, RolePermissionValueProvider.ProviderName, roleName);
} }
public static Task<List<PermissionWithGrantedProviders>> GetAllForRoleAsync([NotNull] this IPermissionManager permissionManager, string roleName) public static Task<List<PermissionWithGrantedProviders>> GetAllForRoleAsync([NotNull] this IPermissionManager permissionManager, string roleName)
{ {
Check.NotNull(permissionManager, nameof(permissionManager)); Check.NotNull(permissionManager, nameof(permissionManager));
return permissionManager.GetAllAsync(RolePermissionManagementProvider.ProviderName, roleName); return permissionManager.GetAllAsync(RolePermissionValueProvider.ProviderName, roleName);
} }
public static Task SetForRoleAsync([NotNull] this IPermissionManager permissionManager, string roleName, [NotNull] string permissionName, bool isGranted) public static Task SetForRoleAsync([NotNull] this IPermissionManager permissionManager, string roleName, [NotNull] string permissionName, bool isGranted)
{ {
Check.NotNull(permissionManager, nameof(permissionManager)); Check.NotNull(permissionManager, nameof(permissionManager));
return permissionManager.SetAsync(permissionName, RolePermissionManagementProvider.ProviderName, roleName, isGranted); return permissionManager.SetAsync(permissionName, RolePermissionValueProvider.ProviderName, roleName, isGranted);
} }
} }
} }

6
src/Volo.Abp.Identity.Domain/Volo/Abp/Permissions/UserPermissionManagerExtensions.cs → src/Volo.Abp.Identity.Application/Volo/Abp/Permissions/UserPermissionManagerExtensions.cs

@ -2,7 +2,7 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Threading.Tasks; using System.Threading.Tasks;
using JetBrains.Annotations; using JetBrains.Annotations;
using Volo.Abp.Identity; using Volo.Abp.Session;
namespace Volo.Abp.Permissions namespace Volo.Abp.Permissions
{ {
@ -12,14 +12,14 @@ namespace Volo.Abp.Permissions
{ {
Check.NotNull(permissionManager, nameof(permissionManager)); Check.NotNull(permissionManager, nameof(permissionManager));
return permissionManager.GetAllAsync(UserPermissionManagementProvider.ProviderName, userId.ToString()); return permissionManager.GetAllAsync(UserPermissionValueProvider.ProviderName, userId.ToString());
} }
public static Task SetForUserAsync([NotNull] this IPermissionManager permissionManager, Guid userId, [NotNull] string name, bool isGranted) public static Task SetForUserAsync([NotNull] this IPermissionManager permissionManager, Guid userId, [NotNull] string name, bool isGranted)
{ {
Check.NotNull(permissionManager, nameof(permissionManager)); Check.NotNull(permissionManager, nameof(permissionManager));
return permissionManager.SetAsync(name, UserPermissionManagementProvider.ProviderName, userId.ToString(), isGranted); return permissionManager.SetAsync(name, UserPermissionValueProvider.ProviderName, userId.ToString(), isGranted);
} }
} }
} }
Loading…
Cancel
Save