Add DisplayName to permission group

pull/279/head
Halil İbrahim Kalkan 8 years ago
parent 9326e86abc
commit 88a09c08e8

@ -1,4 +1,5 @@
using JetBrains.Annotations;
using Volo.Abp.Localization;
namespace Volo.Abp.Authorization.Permissions
{
@ -6,6 +7,6 @@ namespace Volo.Abp.Authorization.Permissions
{
//TODO: Add Get methods to find and modify a permission or group.
PermissionGroupDefinition AddGroup([NotNull] string name);
PermissionGroupDefinition AddGroup([NotNull] string name, ILocalizableString displayName = null);
}
}

@ -18,7 +18,12 @@ namespace Volo.Abp.Authorization.Permissions
/// </summary>
public PermissionDefinition Parent { get; private set; }
public ILocalizableString DisplayName { get; set; }
public ILocalizableString DisplayName
{
get => _displayName;
set => _displayName = Check.NotNull(value, nameof(value));
}
private ILocalizableString _displayName;
public IReadOnlyList<PermissionDefinition> Children => _children.ToImmutableList();
private readonly List<PermissionDefinition> _children;

@ -1,4 +1,5 @@
using System.Collections.Generic;
using Volo.Abp.Localization;
namespace Volo.Abp.Authorization.Permissions
{
@ -11,7 +12,7 @@ namespace Volo.Abp.Authorization.Permissions
Groups = new Dictionary<string, PermissionGroupDefinition>();
}
public virtual PermissionGroupDefinition AddGroup(string name)
public virtual PermissionGroupDefinition AddGroup(string name, ILocalizableString displayName = null)
{
Check.NotNull(name, nameof(name));
@ -20,7 +21,7 @@ namespace Volo.Abp.Authorization.Permissions
throw new AbpException($"There is already an existing permission group with name: {name}");
}
return Groups[name] = new PermissionGroupDefinition(name);
return Groups[name] = new PermissionGroupDefinition(name, displayName);
}
}
}

@ -13,6 +13,13 @@ namespace Volo.Abp.Authorization.Permissions
public Dictionary<string, object> Properties { get; }
public ILocalizableString DisplayName
{
get => _displayName;
set => _displayName = Check.NotNull(value, nameof(value));
}
private ILocalizableString _displayName;
public IReadOnlyList<PermissionDefinition> Permissions => _permissions.ToImmutableList();
private readonly List<PermissionDefinition> _permissions;
@ -30,9 +37,10 @@ namespace Volo.Abp.Authorization.Permissions
set => Properties[name] = value;
}
protected internal PermissionGroupDefinition(string name)
protected internal PermissionGroupDefinition(string name, ILocalizableString displayName = null)
{
Name = name;
DisplayName = displayName ?? new FixedLocalizableString(Name);
Properties = new Dictionary<string, object>();
_permissions = new List<PermissionDefinition>();

Loading…
Cancel
Save