From 8e934cc1272002f0dc37db7b99fcd0d1ad832e2b Mon Sep 17 00:00:00 2001 From: enisn Date: Thu, 11 Mar 2021 12:49:56 +0300 Subject: [PATCH] CmsKit - Improve Standardization of EntityTypeDefinition --- .../Volo/CmsKit/EntityTypeDefinition.cs | 22 +++++++++++++++++++ .../Volo/CmsKit/IEntityTypeDefinitionStore.cs | 2 +- .../Volo/CmsKit/PolicySpecifiedDefinition.cs | 13 ++--------- 3 files changed, 25 insertions(+), 12 deletions(-) create mode 100644 modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/EntityTypeDefinition.cs diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/EntityTypeDefinition.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/EntityTypeDefinition.cs new file mode 100644 index 0000000000..aed0f040bb --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/EntityTypeDefinition.cs @@ -0,0 +1,22 @@ +using JetBrains.Annotations; +using System; +using Volo.Abp; + +namespace Volo.CmsKit +{ + public abstract class EntityTypeDefinition : IEquatable + { + public EntityTypeDefinition([NotNull] string entityType) + { + EntityType = Check.NotNullOrEmpty(entityType, nameof(entityType)); + } + + [NotNull] + public string EntityType { get; protected set; } + + public bool Equals(EntityTypeDefinition other) + { + return EntityType == other?.EntityType; + } + } +} diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/IEntityTypeDefinitionStore.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/IEntityTypeDefinitionStore.cs index e5f0bf7fd3..efe1974a4e 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/IEntityTypeDefinitionStore.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/IEntityTypeDefinitionStore.cs @@ -5,7 +5,7 @@ using Volo.Abp.DependencyInjection; namespace Volo.CmsKit { public interface IEntityTypeDefinitionStore : ITransientDependency - where TPolicyDefinition : class + where TPolicyDefinition : EntityTypeDefinition { Task GetAsync([NotNull] string entityType); diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/PolicySpecifiedDefinition.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/PolicySpecifiedDefinition.cs index edfee13337..743b5c280a 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/PolicySpecifiedDefinition.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/PolicySpecifiedDefinition.cs @@ -6,20 +6,14 @@ using Volo.Abp; namespace Volo.CmsKit { - public abstract class PolicySpecifiedDefinition : IEquatable + public abstract class PolicySpecifiedDefinition : EntityTypeDefinition, IEquatable { - protected PolicySpecifiedDefinition() - { - } - public PolicySpecifiedDefinition( [NotNull] string entityType, IEnumerable createPolicies = null, IEnumerable updatePolicies = null, - IEnumerable deletePolicies = null) + IEnumerable deletePolicies = null) : base(entityType) { - EntityType = Check.NotNullOrEmpty(entityType, nameof(entityType)); - if (createPolicies != null) { CreatePolicies = CreatePolicies.Concat(createPolicies).ToList(); @@ -36,9 +30,6 @@ namespace Volo.CmsKit } } - [NotNull] - public string EntityType { get; set; } - [NotNull] public virtual ICollection CreatePolicies { get; } = new List();