Browse Source

Refactor: Re-order methods.

pull/13644/head
Halil İbrahim Kalkan 4 years ago
parent
commit
e1a09e48a1
  1. 10
      modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo/Abp/PermissionManagement/IPermissionDefinitionSerializer.cs
  2. 82
      modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo/Abp/PermissionManagement/PermissionDefinitionSerializer.cs

10
modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo/Abp/PermissionManagement/IPermissionDefinitionSerializer.cs

@ -7,13 +7,13 @@ namespace Volo.Abp.PermissionManagement;
public interface IPermissionDefinitionSerializer public interface IPermissionDefinitionSerializer
{ {
Task<PermissionDefinitionRecord> SerializeAsync( Task<(PermissionGroupDefinitionRecord[], PermissionDefinitionRecord[])>
PermissionDefinition permission, SerializeAsync(IEnumerable<PermissionGroupDefinition> permissionGroups);
[CanBeNull] PermissionGroupDefinition permissionGroup);
Task<PermissionGroupDefinitionRecord> SerializeAsync( Task<PermissionGroupDefinitionRecord> SerializeAsync(
PermissionGroupDefinition permissionGroup); PermissionGroupDefinition permissionGroup);
Task<(PermissionGroupDefinitionRecord[], PermissionDefinitionRecord[])> Task<PermissionDefinitionRecord> SerializeAsync(
SerializeAsync(IEnumerable<PermissionGroupDefinition> permissionGroups); PermissionDefinition permission,
[CanBeNull] PermissionGroupDefinition permissionGroup);
} }

82
modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo/Abp/PermissionManagement/PermissionDefinitionSerializer.cs

@ -27,34 +27,26 @@ public class PermissionDefinitionSerializer : IPermissionDefinitionSerializer, I
GuidGenerator = guidGenerator; GuidGenerator = guidGenerator;
StringLocalizerFactory = stringLocalizerFactory; StringLocalizerFactory = stringLocalizerFactory;
} }
public Task<PermissionDefinitionRecord> SerializeAsync( public async Task<(PermissionGroupDefinitionRecord[], PermissionDefinitionRecord[])>
PermissionDefinition permission, SerializeAsync(IEnumerable<PermissionGroupDefinition> permissionGroups)
PermissionGroupDefinition permissionGroup)
{ {
using (CultureHelper.Use(CultureInfo.InvariantCulture)) var permissionGroupRecords = new List<PermissionGroupDefinitionRecord>();
var permissionRecords = new List<PermissionDefinitionRecord>();
foreach (var permissionGroup in permissionGroups)
{ {
var permissionRecord = new PermissionDefinitionRecord( permissionGroupRecords.Add(await SerializeAsync(permissionGroup));
GuidGenerator.Create(),
permissionGroup?.Name, foreach (var permission in permissionGroup.GetPermissionsWithChildren())
permission.Name,
permission.Parent?.Name,
permission.DisplayName.Localize(StringLocalizerFactory),
permission.IsEnabled,
permission.MultiTenancySide,
SerializeProviders(permission.Providers),
SerializeStateCheckers(permission.StateCheckers)
);
foreach (var property in permission.Properties)
{ {
permissionRecord.SetProperty(property.Key, property.Value); permissionRecords.Add(await SerializeAsync(permission, permissionGroup));
} }
return Task.FromResult(permissionRecord);
} }
}
return (permissionGroupRecords.ToArray(), permissionRecords.ToArray());
}
public Task<PermissionGroupDefinitionRecord> SerializeAsync(PermissionGroupDefinition permissionGroup) public Task<PermissionGroupDefinitionRecord> SerializeAsync(PermissionGroupDefinition permissionGroup)
{ {
using (CultureHelper.Use(CultureInfo.InvariantCulture)) using (CultureHelper.Use(CultureInfo.InvariantCulture))
@ -73,35 +65,43 @@ public class PermissionDefinitionSerializer : IPermissionDefinitionSerializer, I
return Task.FromResult(permissionGroupRecord); return Task.FromResult(permissionGroupRecord);
} }
} }
public async Task<(PermissionGroupDefinitionRecord[], PermissionDefinitionRecord[])> public Task<PermissionDefinitionRecord> SerializeAsync(
SerializeAsync(IEnumerable<PermissionGroupDefinition> permissionGroups) PermissionDefinition permission,
PermissionGroupDefinition permissionGroup)
{ {
var permissionGroupRecords = new List<PermissionGroupDefinitionRecord>(); using (CultureHelper.Use(CultureInfo.InvariantCulture))
var permissionRecords = new List<PermissionDefinitionRecord>();
foreach (var permissionGroup in permissionGroups)
{ {
permissionGroupRecords.Add(await SerializeAsync(permissionGroup)); var permissionRecord = new PermissionDefinitionRecord(
GuidGenerator.Create(),
foreach (var permission in permissionGroup.GetPermissionsWithChildren()) permissionGroup?.Name,
permission.Name,
permission.Parent?.Name,
permission.DisplayName.Localize(StringLocalizerFactory),
permission.IsEnabled,
permission.MultiTenancySide,
SerializeProviders(permission.Providers),
SerializeStateCheckers(permission.StateCheckers)
);
foreach (var property in permission.Properties)
{ {
permissionRecords.Add(await SerializeAsync(permission, permissionGroup)); permissionRecord.SetProperty(property.Key, property.Value);
} }
return Task.FromResult(permissionRecord);
} }
return (permissionGroupRecords.ToArray(), permissionRecords.ToArray());
}
protected virtual string SerializeStateCheckers(List<ISimpleStateChecker<PermissionDefinition>> stateCheckers)
{
return StateCheckerSerializer.Serialize(stateCheckers);
} }
protected virtual string SerializeProviders(ICollection<string> providers) protected virtual string SerializeProviders(ICollection<string> providers)
{ {
return providers.Any() return providers.Any()
? providers.JoinAsString(",") ? providers.JoinAsString(",")
: null; : null;
} }
protected virtual string SerializeStateCheckers(List<ISimpleStateChecker<PermissionDefinition>> stateCheckers)
{
return StateCheckerSerializer.Serialize(stateCheckers);
}
} }
Loading…
Cancel
Save