From c4955719b16dfb45d4ea2dade79db9108b0f0d05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Sun, 3 May 2020 02:00:28 +0300 Subject: [PATCH] Rename and refactor module extensions. --- .../CachedObjectExtensionsDtoService.cs | 187 +++++++++++------- .../ObjectExtending/EntityExtensionDto.cs | 14 ++ ...on.cs => ExtensionPropertyApiCreateDto.cs} | 2 +- .../ExtensionPropertyApiDto.cs | 23 +++ ...ation.cs => ExtensionPropertyApiGetDto.cs} | 2 +- ...on.cs => ExtensionPropertyApiUpdateDto.cs} | 2 +- ...to.cs => ExtensionPropertyAttributeDto.cs} | 6 +- ...xtensionDto.cs => ExtensionPropertyDto.cs} | 10 +- .../ObjectExtending/ExtensionPropertyUiDto.cs | 12 ++ ...onDto.cs => ExtensionPropertyUiFormDto.cs} | 2 +- ...nDto.cs => ExtensionPropertyUiTableDto.cs} | 2 +- .../ObjectExtending/LocalizableStringDto.cs | 9 +- ...ObjectPropertyExtensionApiConfiguration.cs | 23 --- .../ModuleObjectExtensionDto.cs | 11 -- ...ModuleObjectExtraPropertyUiExtensionDto.cs | 12 -- .../ObjectExtensionConfigurationDto.cs | 7 +- .../Abp/Localization/LocalizableString.cs | 9 +- ...ion.cs => EntityExtensionConfiguration.cs} | 23 ++- .../EntityExtensionConfigurationDictionary.cs | 9 + .../ExtensionPropertyApiConfiguration.cs | 23 +++ ...xtensionPropertyApiCreateConfiguration.cs} | 2 +- ...> ExtensionPropertyApiGetConfiguration.cs} | 2 +- ...xtensionPropertyApiUpdateConfiguration.cs} | 2 +- ...n.cs => ExtensionPropertyConfiguration.cs} | 30 +-- ...xtensionPropertyConfigurationDictionary.cs | 9 + ...> ExtensionPropertyEntityConfiguration.cs} | 2 +- .../ExtensionPropertyUiConfiguration.cs | 23 +++ ...> ExtensionPropertyUiFormConfiguration.cs} | 2 +- ... ExtensionPropertyUiTableConfiguration.cs} | 2 +- ...yObjectExtensionConfigurationDictionary.cs | 9 - ...ObjectPropertyExtensionApiConfiguration.cs | 23 --- ...ropertyExtensionConfigurationDictionary.cs | 9 - ...yObjectPropertyExtensionUIConfiguration.cs | 23 --- .../ModuleExtensionConfiguration.cs | 20 ++ .../ModuleExtensionConfigurationDictionary.cs | 9 + ...nsionConfigurationDictionaryExtensions.cs} | 8 +- ...ModuleExtensionConfigurationExtensions.cs} | 10 +- ... => ModuleExtensionConfigurationHelper.cs} | 44 ++--- .../ModuleObjectExtensionConfiguration.cs | 12 -- ...eObjectExtensionConfigurationDictionary.cs | 9 - .../ModuleObjectExtensionManagerExtensions.cs | 6 +- .../IdentityModuleExtensionConfiguration.cs | 9 + ...yModuleExtensionConfigurationExtensions.cs | 18 ++ ...ntityModuleObjectExtensionConfiguration.cs | 9 - ...eObjectExtensionConfigurationExtensions.cs | 18 -- ...ObjectExtensionConfigurationsExtensions.cs | 6 +- .../Abp/Identity/AbpIdentityDomainModule.cs | 2 +- 47 files changed, 384 insertions(+), 322 deletions(-) create mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/EntityExtensionDto.cs rename framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/{ModuleEntityObjectPropertyExtensionApiGetConfiguration.cs => ExtensionPropertyApiCreateDto.cs} (76%) create mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiDto.cs rename framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/{ModuleEntityObjectPropertyExtensionApiCreateConfiguration.cs => ExtensionPropertyApiGetDto.cs} (76%) rename framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/{ModuleEntityObjectPropertyExtensionApiUpdateConfiguration.cs => ExtensionPropertyApiUpdateDto.cs} (76%) rename framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/{ModuleObjectExtraPropertyAttributeDto.cs => ExtensionPropertyAttributeDto.cs} (83%) rename framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/{ModuleObjectExtraPropertyExtensionDto.cs => ExtensionPropertyDto.cs} (55%) create mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiDto.cs rename framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/{ModuleObjectExtraPropertyUiFormExtensionDto.cs => ExtensionPropertyUiFormDto.cs} (73%) rename framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/{ModuleObjectExtraPropertyUiTableExtensionDto.cs => ExtensionPropertyUiTableDto.cs} (73%) delete mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiConfiguration.cs delete mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtensionDto.cs delete mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiExtensionDto.cs rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleEntityObjectExtensionConfiguration.cs => EntityExtensionConfiguration.cs} (55%) create mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/EntityExtensionConfigurationDictionary.cs create mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiConfiguration.cs rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleEntityObjectPropertyExtensionApiGetConfiguration.cs => ExtensionPropertyApiCreateConfiguration.cs} (72%) rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleEntityObjectPropertyExtensionEntityConfiguration.cs => ExtensionPropertyApiGetConfiguration.cs} (72%) rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleEntityObjectPropertyExtensionApiCreateConfiguration.cs => ExtensionPropertyApiUpdateConfiguration.cs} (71%) rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleEntityObjectPropertyExtensionConfiguration.cs => ExtensionPropertyConfiguration.cs} (54%) create mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyConfigurationDictionary.cs rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleEntityObjectPropertyExtensionApiUpdateConfiguration.cs => ExtensionPropertyEntityConfiguration.cs} (71%) create mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiConfiguration.cs rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleEntityObjectPropertyExtensionUIFormConfiguration.cs => ExtensionPropertyUiFormConfiguration.cs} (71%) rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleEntityObjectPropertyExtensionUITableConfiguration.cs => ExtensionPropertyUiTableConfiguration.cs} (71%) delete mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectExtensionConfigurationDictionary.cs delete mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiConfiguration.cs delete mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionConfigurationDictionary.cs delete mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUIConfiguration.cs create mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfiguration.cs create mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationDictionary.cs rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleObjectExtensionConfigurationDictionaryExtensions.cs => ModuleExtensionConfigurationDictionaryExtensions.cs} (64%) rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleObjectExtensionConfigurationExtensions.cs => ModuleExtensionConfigurationExtensions.cs} (55%) rename framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/{ModuleObjectExtensionConfigurationHelper.cs => ModuleExtensionConfigurationHelper.cs} (78%) delete mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfiguration.cs delete mode 100644 framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationDictionary.cs create mode 100644 modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleExtensionConfiguration.cs create mode 100644 modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleExtensionConfigurationExtensions.cs delete mode 100644 modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfiguration.cs delete mode 100644 modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfigurationExtensions.cs diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/CachedObjectExtensionsDtoService.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/CachedObjectExtensionsDtoService.cs index 766be2e42b..f87fef31aa 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/CachedObjectExtensionsDtoService.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/CachedObjectExtensionsDtoService.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Linq; using Volo.Abp.DependencyInjection; using Volo.Abp.Localization; using Volo.Abp.ObjectExtending; @@ -30,8 +31,6 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending protected virtual ObjectExtensionsDto GenerateCacheValue() { - //TODO: Obviously needs refactoring! - var objectExtensionsDto = new ObjectExtensionsDto { Modules = new Dictionary() @@ -39,80 +38,118 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending foreach (var moduleConfig in ObjectExtensionManager.Instance.Modules()) { - var moduleExtensionDto = objectExtensionsDto.Modules[moduleConfig.Key] = new ModuleExtensionDto - { - Objects = new Dictionary() - }; + objectExtensionsDto.Modules[moduleConfig.Key] = CreateModuleExtensionDto(moduleConfig.Value); + } + + return objectExtensionsDto; + } + + protected virtual ModuleExtensionDto CreateModuleExtensionDto( + ModuleExtensionConfiguration moduleConfig) + { + var moduleExtensionDto = new ModuleExtensionDto + { + Entities = new Dictionary() + }; + + foreach (var objectConfig in moduleConfig.Entities) + { + moduleExtensionDto.Entities[objectConfig.Key] = GetEntityExtensionDto(objectConfig.Value); + } - foreach (var objectConfig in moduleConfig.Value.Entities) + foreach (var customConfig in moduleConfig.Configuration.Where(c => !c.Key.StartsWith("_"))) + { + moduleExtensionDto.Configuration[customConfig.Key] = customConfig.Value; + } + + return moduleExtensionDto; + } + + protected virtual EntityExtensionDto GetEntityExtensionDto( + EntityExtensionConfiguration entityConfig) + { + var entityExtensionDto = new EntityExtensionDto + { + Properties = new Dictionary(), + Configuration = new Dictionary() + }; + + foreach (var propertyConfig in entityConfig.GetProperties()) + { + if (!propertyConfig.IsAvailableToClients) { - var moduleObjectExtensionDto = moduleExtensionDto.Objects[objectConfig.Key] = - new ModuleObjectExtensionDto - { - ExtraProperties = new Dictionary() - }; + continue; + } + + entityExtensionDto.Properties[propertyConfig.Name] = CreateExtensionPropertyDto(propertyConfig); + } + + foreach (var customConfig in entityConfig.Configuration.Where(c => !c.Key.StartsWith("_"))) + { + entityExtensionDto.Configuration[customConfig.Key] = customConfig.Value; + } - foreach (var propertyConfig in objectConfig.Value.GetProperties()) + return entityExtensionDto; + } + + protected virtual ExtensionPropertyDto CreateExtensionPropertyDto( + ExtensionPropertyConfiguration propertyConfig) + { + var extensionPropertyDto = new ExtensionPropertyDto + { + Type = TypeHelper.GetFullNameHandlingNullableAndGenerics(propertyConfig.Type), + TypeSimple = TypeHelper.GetSimplifiedName(propertyConfig.Type), + Attributes = new List(), + DisplayName = CreateDisplayNameDto(propertyConfig), + Configuration = new Dictionary(), + Api = new ExtensionPropertyApiDto + { + OnGet = new ExtensionPropertyApiGetDto + { + IsAvailable = propertyConfig.Api.OnGet.IsAvailable + }, + OnCreate = new ExtensionPropertyApiCreateDto { - if (!propertyConfig.IsAvailableToClients) - { - continue; - } - - var propertyExtensionDto = moduleObjectExtensionDto.ExtraProperties[propertyConfig.Name] = - new ModuleObjectExtraPropertyExtensionDto - { - Type = TypeHelper.GetFullNameHandlingNullableAndGenerics(propertyConfig.Type), - TypeSimple = TypeHelper.GetSimplifiedName(propertyConfig.Type), - Attributes = new List(), - DisplayName = CreateDisplayNameDto(propertyConfig), - Api = new ModuleEntityObjectPropertyExtensionApiConfigurationDto - { - OnGet = new ModuleEntityObjectPropertyExtensionApiGetConfigurationDto - { - IsAvailable = propertyConfig.Api.OnGet.IsAvailable - }, - OnCreate = new ModuleEntityObjectPropertyExtensionApiCreateConfigurationDto - { - IsAvailable = propertyConfig.Api.OnCreate.IsAvailable - }, - OnUpdate = new ModuleEntityObjectPropertyExtensionApiUpdateConfigurationDto - { - IsAvailable = propertyConfig.Api.OnUpdate.IsAvailable - } - }, - Ui = new ModuleObjectExtraPropertyUiExtensionDto - { - OnCreateForm = new ModuleObjectExtraPropertyUiFormExtensionDto - { - IsVisible = propertyConfig.UI.OnCreateForm.IsVisible - }, - OnEditForm = new ModuleObjectExtraPropertyUiFormExtensionDto - { - IsVisible = propertyConfig.UI.OnEditForm.IsVisible - }, - OnTable = new ModuleObjectExtraPropertyUiTableExtensionDto - { - IsVisible = propertyConfig.UI.OnTable.IsVisible - } - } - }; - - foreach (var attribute in propertyConfig.Attributes) - { - propertyExtensionDto.Attributes.Add( - ModuleObjectExtraPropertyAttributeDto.Create(attribute) - ); - } + IsAvailable = propertyConfig.Api.OnCreate.IsAvailable + }, + OnUpdate = new ExtensionPropertyApiUpdateDto + { + IsAvailable = propertyConfig.Api.OnUpdate.IsAvailable + } + }, + Ui = new ExtensionPropertyUiDto + { + OnCreateForm = new ExtensionPropertyUiFormDto + { + IsVisible = propertyConfig.UI.OnCreateForm.IsVisible + }, + OnEditForm = new ExtensionPropertyUiFormDto + { + IsVisible = propertyConfig.UI.OnEditForm.IsVisible + }, + OnTable = new ExtensionPropertyUiTableDto + { + IsVisible = propertyConfig.UI.OnTable.IsVisible } } + }; + + foreach (var attribute in propertyConfig.Attributes) + { + extensionPropertyDto.Attributes.Add( + ExtensionPropertyAttributeDto.Create(attribute) + ); } - return objectExtensionsDto; + foreach (var customConfig in propertyConfig.Configuration.Where(c => !c.Key.StartsWith("_"))) + { + extensionPropertyDto.Configuration[customConfig.Key] = customConfig.Value; + } + + return extensionPropertyDto; } - private static LocalizableStringDto CreateDisplayNameDto( - ModuleEntityObjectPropertyExtensionConfiguration propertyConfig) + protected virtual LocalizableStringDto CreateDisplayNameDto(ExtensionPropertyConfiguration propertyConfig) { if (propertyConfig.DisplayName == null) { @@ -121,20 +158,18 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending if (propertyConfig.DisplayName is LocalizableString localizableStringInstance) { - return new LocalizableStringDto - { - Name = localizableStringInstance.Name, - Resource = LocalizationResourceNameAttribute.GetName(localizableStringInstance.ResourceType) - }; + return new LocalizableStringDto( + localizableStringInstance.Name, + localizableStringInstance.ResourceType != null + ? LocalizationResourceNameAttribute.GetName(localizableStringInstance.ResourceType) + : null + ); } if (propertyConfig.DisplayName is FixedLocalizableString fixedLocalizableString) { - return new LocalizableStringDto - { - Name = fixedLocalizableString.Value, - Resource = "_" - }; + // "_" means don't use the default resource, but directly use the name. + return new LocalizableStringDto(fixedLocalizableString.Value, "_"); } return null; diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/EntityExtensionDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/EntityExtensionDto.cs new file mode 100644 index 0000000000..83093e0370 --- /dev/null +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/EntityExtensionDto.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; + +namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending +{ + [Serializable] + public class EntityExtensionDto + { + public Dictionary Properties { get; set; } + + public Dictionary Configuration { get; set; } + + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiGetConfiguration.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiCreateDto.cs similarity index 76% rename from framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiGetConfiguration.cs rename to framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiCreateDto.cs index 20bf7682c3..a2a588a358 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiGetConfiguration.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiCreateDto.cs @@ -3,7 +3,7 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending { [Serializable] - public class ModuleEntityObjectPropertyExtensionApiGetConfigurationDto + public class ExtensionPropertyApiCreateDto { /// /// Default: true. diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiDto.cs new file mode 100644 index 0000000000..a9b4ec5b24 --- /dev/null +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiDto.cs @@ -0,0 +1,23 @@ +using JetBrains.Annotations; + +namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending +{ + public class ExtensionPropertyApiDto + { + [NotNull] + public ExtensionPropertyApiGetDto OnGet { get; set; } + + [NotNull] + public ExtensionPropertyApiCreateDto OnCreate { get; set; } + + [NotNull] + public ExtensionPropertyApiUpdateDto OnUpdate { get; set; } + + public ExtensionPropertyApiDto() + { + OnGet = new ExtensionPropertyApiGetDto(); + OnCreate = new ExtensionPropertyApiCreateDto(); + OnUpdate = new ExtensionPropertyApiUpdateDto(); + } + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiCreateConfiguration.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiGetDto.cs similarity index 76% rename from framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiCreateConfiguration.cs rename to framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiGetDto.cs index 7cfa9959b0..e50a45d15a 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiCreateConfiguration.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiGetDto.cs @@ -3,7 +3,7 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending { [Serializable] - public class ModuleEntityObjectPropertyExtensionApiCreateConfigurationDto + public class ExtensionPropertyApiGetDto { /// /// Default: true. diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiUpdateConfiguration.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiUpdateDto.cs similarity index 76% rename from framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiUpdateConfiguration.cs rename to framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiUpdateDto.cs index 3000965957..a517b258da 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiUpdateConfiguration.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyApiUpdateDto.cs @@ -3,7 +3,7 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending { [Serializable] - public class ModuleEntityObjectPropertyExtensionApiUpdateConfigurationDto + public class ExtensionPropertyApiUpdateDto { /// /// Default: true. diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyAttributeDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyAttributeDto.cs similarity index 83% rename from framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyAttributeDto.cs rename to framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyAttributeDto.cs index d45bf7d8d4..c1c19350c2 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyAttributeDto.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyAttributeDto.cs @@ -6,16 +6,16 @@ using Volo.Abp.Reflection; namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending { [Serializable] - public class ModuleObjectExtraPropertyAttributeDto + public class ExtensionPropertyAttributeDto { public string Type { get; set; } public string TypeSimple { get; set; } public Dictionary Configuration { get; set; } - public static ModuleObjectExtraPropertyAttributeDto Create(Attribute attribute) + public static ExtensionPropertyAttributeDto Create(Attribute attribute) { var attributeType = attribute.GetType(); - var dto = new ModuleObjectExtraPropertyAttributeDto + var dto = new ExtensionPropertyAttributeDto { Type = TypeHelper.GetFullNameHandlingNullableAndGenerics(attributeType), TypeSimple = TypeHelper.GetSimplifiedName(attributeType), diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyExtensionDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyDto.cs similarity index 55% rename from framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyExtensionDto.cs rename to framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyDto.cs index d61c49d327..74214914b9 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyExtensionDto.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyDto.cs @@ -5,7 +5,7 @@ using JetBrains.Annotations; namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending { [Serializable] - public class ModuleObjectExtraPropertyExtensionDto + public class ExtensionPropertyDto { public string Type { get; set; } @@ -14,10 +14,12 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending [CanBeNull] public LocalizableStringDto DisplayName { get; set; } - public ModuleEntityObjectPropertyExtensionApiConfigurationDto Api { get; set; } + public ExtensionPropertyApiDto Api { get; set; } - public ModuleObjectExtraPropertyUiExtensionDto Ui { get; set; } + public ExtensionPropertyUiDto Ui { get; set; } - public List Attributes { get; set; } + public List Attributes { get; set; } + + public Dictionary Configuration { get; set; } } } \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiDto.cs new file mode 100644 index 0000000000..2fb841ec5a --- /dev/null +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiDto.cs @@ -0,0 +1,12 @@ +using System; + +namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending +{ + [Serializable] + public class ExtensionPropertyUiDto + { + public ExtensionPropertyUiTableDto OnTable { get; set; } + public ExtensionPropertyUiFormDto OnCreateForm { get; set; } + public ExtensionPropertyUiFormDto OnEditForm { get; set; } + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiFormExtensionDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiFormDto.cs similarity index 73% rename from framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiFormExtensionDto.cs rename to framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiFormDto.cs index 9d7e719f4f..c4f6f5211c 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiFormExtensionDto.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiFormDto.cs @@ -3,7 +3,7 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending { [Serializable] - public class ModuleObjectExtraPropertyUiFormExtensionDto + public class ExtensionPropertyUiFormDto { public bool IsVisible { get; set; } } diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiTableExtensionDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiTableDto.cs similarity index 73% rename from framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiTableExtensionDto.cs rename to framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiTableDto.cs index 419b9a6430..4c9e4a7ce0 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiTableExtensionDto.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ExtensionPropertyUiTableDto.cs @@ -3,7 +3,7 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending { [Serializable] - public class ModuleObjectExtraPropertyUiTableExtensionDto + public class ExtensionPropertyUiTableDto { public bool IsVisible { get; set; } } diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/LocalizableStringDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/LocalizableStringDto.cs index 307831315b..b80352d791 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/LocalizableStringDto.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/LocalizableStringDto.cs @@ -6,9 +6,16 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending [Serializable] public class LocalizableStringDto { - public string Name { get; set; } + [NotNull] + public string Name { get; private set; } [CanBeNull] public string Resource { get; set; } + + public LocalizableStringDto([NotNull] string name, string resource = null) + { + Name = Check.NotNullOrEmpty(name, nameof(name)); + Resource = resource; + } } } \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiConfiguration.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiConfiguration.cs deleted file mode 100644 index 9f4d1db42c..0000000000 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleEntityObjectPropertyExtensionApiConfiguration.cs +++ /dev/null @@ -1,23 +0,0 @@ -using JetBrains.Annotations; - -namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending -{ - public class ModuleEntityObjectPropertyExtensionApiConfigurationDto - { - [NotNull] - public ModuleEntityObjectPropertyExtensionApiGetConfigurationDto OnGet { get; set; } - - [NotNull] - public ModuleEntityObjectPropertyExtensionApiCreateConfigurationDto OnCreate { get; set; } - - [NotNull] - public ModuleEntityObjectPropertyExtensionApiUpdateConfigurationDto OnUpdate { get; set; } - - public ModuleEntityObjectPropertyExtensionApiConfigurationDto() - { - OnGet = new ModuleEntityObjectPropertyExtensionApiGetConfigurationDto(); - OnCreate = new ModuleEntityObjectPropertyExtensionApiCreateConfigurationDto(); - OnUpdate = new ModuleEntityObjectPropertyExtensionApiUpdateConfigurationDto(); - } - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtensionDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtensionDto.cs deleted file mode 100644 index 0879fc60bd..0000000000 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtensionDto.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending -{ - [Serializable] - public class ModuleObjectExtensionDto - { - public Dictionary ExtraProperties { get; set; } - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiExtensionDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiExtensionDto.cs deleted file mode 100644 index 8a24a3895c..0000000000 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ModuleObjectExtraPropertyUiExtensionDto.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; - -namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending -{ - [Serializable] - public class ModuleObjectExtraPropertyUiExtensionDto - { - public ModuleObjectExtraPropertyUiTableExtensionDto OnTable { get; set; } - public ModuleObjectExtraPropertyUiFormExtensionDto OnCreateForm { get; set; } - public ModuleObjectExtraPropertyUiFormExtensionDto OnEditForm { get; set; } - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ObjectExtensionConfigurationDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ObjectExtensionConfigurationDto.cs index 096c2210c0..e077596f59 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ObjectExtensionConfigurationDto.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/ObjectExtending/ObjectExtensionConfigurationDto.cs @@ -6,7 +6,8 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ObjectExtending [Serializable] public class ModuleExtensionDto { - public Dictionary Objects { get; set; } - } -} + public Dictionary Entities { get; set; } + public Dictionary Configuration { get; set; } + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.Localization/Volo/Abp/Localization/LocalizableString.cs b/framework/src/Volo.Abp.Localization/Volo/Abp/Localization/LocalizableString.cs index 6698ba4645..40edff18e7 100644 --- a/framework/src/Volo.Abp.Localization/Volo/Abp/Localization/LocalizableString.cs +++ b/framework/src/Volo.Abp.Localization/Volo/Abp/Localization/LocalizableString.cs @@ -1,18 +1,21 @@ using System; +using JetBrains.Annotations; using Microsoft.Extensions.Localization; namespace Volo.Abp.Localization { public class LocalizableString : ILocalizableString { + [CanBeNull] public Type ResourceType { get; } + [NotNull] public string Name { get; } - public LocalizableString(Type resourceType, string name) + public LocalizableString(Type resourceType, [NotNull] string name) { + Name = Check.NotNullOrEmpty(name, nameof(name)); ResourceType = resourceType; - Name = name; } public LocalizedString Localize(IStringLocalizerFactory stringLocalizerFactory) @@ -20,7 +23,7 @@ namespace Volo.Abp.Localization return stringLocalizerFactory.Create(ResourceType)[Name]; } - public static LocalizableString Create(string name) + public static LocalizableString Create([NotNull] string name) { return new LocalizableString(typeof(TResource), name); } diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectExtensionConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/EntityExtensionConfiguration.cs similarity index 55% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectExtensionConfiguration.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/EntityExtensionConfiguration.cs index 2c7beaa0e4..ce84cb19e5 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectExtensionConfiguration.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/EntityExtensionConfiguration.cs @@ -5,24 +5,27 @@ using JetBrains.Annotations; namespace Volo.Abp.ObjectExtending.Modularity { - public class ModuleEntityObjectExtensionConfiguration + public class EntityExtensionConfiguration { [NotNull] - protected ModuleEntityObjectPropertyExtensionConfigurationDictionary Properties { get; } + protected ExtensionPropertyConfigurationDictionary Properties { get; } [NotNull] public List> Validators { get; } - public ModuleEntityObjectExtensionConfiguration() + public Dictionary Configuration { get; } + + public EntityExtensionConfiguration() { - Properties = new ModuleEntityObjectPropertyExtensionConfigurationDictionary(); + Properties = new ExtensionPropertyConfigurationDictionary(); Validators = new List>(); + Configuration = new Dictionary(); } [NotNull] - public virtual ModuleEntityObjectExtensionConfiguration AddOrUpdateProperty( + public virtual EntityExtensionConfiguration AddOrUpdateProperty( [NotNull] string propertyName, - [CanBeNull] Action configureAction = null) + [CanBeNull] Action configureAction = null) { return AddOrUpdateProperty( typeof(TProperty), @@ -32,17 +35,17 @@ namespace Volo.Abp.ObjectExtending.Modularity } [NotNull] - public virtual ModuleEntityObjectExtensionConfiguration AddOrUpdateProperty( + public virtual EntityExtensionConfiguration AddOrUpdateProperty( [NotNull] Type propertyType, [NotNull] string propertyName, - [CanBeNull] Action configureAction = null) + [CanBeNull] Action configureAction = null) { Check.NotNull(propertyType, nameof(propertyType)); Check.NotNull(propertyName, nameof(propertyName)); var propertyInfo = Properties.GetOrAdd( propertyName, - () => new ModuleEntityObjectPropertyExtensionConfiguration(this, propertyType, propertyName) + () => new ExtensionPropertyConfiguration(this, propertyType, propertyName) ); configureAction?.Invoke(propertyInfo); @@ -51,7 +54,7 @@ namespace Volo.Abp.ObjectExtending.Modularity } [NotNull] - public virtual ImmutableList GetProperties() + public virtual ImmutableList GetProperties() { return Properties.Values.ToImmutableList(); } diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/EntityExtensionConfigurationDictionary.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/EntityExtensionConfigurationDictionary.cs new file mode 100644 index 0000000000..4cc43c2932 --- /dev/null +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/EntityExtensionConfigurationDictionary.cs @@ -0,0 +1,9 @@ +using System.Collections.Generic; + +namespace Volo.Abp.ObjectExtending.Modularity +{ + public class EntityExtensionConfigurationDictionary : Dictionary + { + + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiConfiguration.cs new file mode 100644 index 0000000000..507c8636b4 --- /dev/null +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiConfiguration.cs @@ -0,0 +1,23 @@ +using JetBrains.Annotations; + +namespace Volo.Abp.ObjectExtending.Modularity +{ + public class ExtensionPropertyApiConfiguration + { + [NotNull] + public ExtensionPropertyApiGetConfiguration OnGet { get; } + + [NotNull] + public ExtensionPropertyApiCreateConfiguration OnCreate { get; } + + [NotNull] + public ExtensionPropertyApiUpdateConfiguration OnUpdate { get; } + + public ExtensionPropertyApiConfiguration() + { + OnGet = new ExtensionPropertyApiGetConfiguration(); + OnCreate = new ExtensionPropertyApiCreateConfiguration(); + OnUpdate = new ExtensionPropertyApiUpdateConfiguration(); + } + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiGetConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiCreateConfiguration.cs similarity index 72% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiGetConfiguration.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiCreateConfiguration.cs index 5c43e8397c..235390b9be 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiGetConfiguration.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiCreateConfiguration.cs @@ -1,6 +1,6 @@ namespace Volo.Abp.ObjectExtending.Modularity { - public class ModuleEntityObjectPropertyExtensionApiGetConfiguration + public class ExtensionPropertyApiCreateConfiguration { /// /// Default: true. diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionEntityConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiGetConfiguration.cs similarity index 72% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionEntityConfiguration.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiGetConfiguration.cs index 8ca9fc7cf5..caf7957a02 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionEntityConfiguration.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiGetConfiguration.cs @@ -1,6 +1,6 @@ namespace Volo.Abp.ObjectExtending.Modularity { - public class ModuleEntityObjectPropertyExtensionEntityConfiguration + public class ExtensionPropertyApiGetConfiguration { /// /// Default: true. diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiCreateConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiUpdateConfiguration.cs similarity index 71% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiCreateConfiguration.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiUpdateConfiguration.cs index 2c8c812f8c..897a261a83 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiCreateConfiguration.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyApiUpdateConfiguration.cs @@ -1,6 +1,6 @@ namespace Volo.Abp.ObjectExtending.Modularity { - public class ModuleEntityObjectPropertyExtensionApiCreateConfiguration + public class ExtensionPropertyApiUpdateConfiguration { /// /// Default: true. diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyConfiguration.cs similarity index 54% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionConfiguration.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyConfiguration.cs index 99b790aa82..0ff3941f4e 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionConfiguration.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyConfiguration.cs @@ -5,10 +5,10 @@ using Volo.Abp.Localization; namespace Volo.Abp.ObjectExtending.Modularity { - public class ModuleEntityObjectPropertyExtensionConfiguration : IHasNameWithLocalizableDisplayName + public class ExtensionPropertyConfiguration : IHasNameWithLocalizableDisplayName { [NotNull] - public ModuleEntityObjectExtensionConfiguration EntityObjectExtensionConfiguration { get; } + public EntityExtensionConfiguration EntityExtensionConfiguration { get; } [NotNull] public string Name { get; } @@ -26,11 +26,8 @@ namespace Volo.Abp.ObjectExtending.Modularity public ILocalizableString DisplayName { get; set; } [NotNull] - public Dictionary Configuration { get; } + public Dictionary Configuration { get; } - [NotNull] - public ModuleEntityObjectPropertyExtensionEntityConfiguration Entity { get; } - /// /// Single point to enable/disable this property for the clients (UI and API). /// If this is false, the configuration made in the and the @@ -40,27 +37,30 @@ namespace Volo.Abp.ObjectExtending.Modularity public bool IsAvailableToClients { get; set; } = true; [NotNull] - public ModuleEntityObjectPropertyExtensionUIConfiguration UI { get; } + public ExtensionPropertyEntityConfiguration Entity { get; } + + [NotNull] + public ExtensionPropertyUiConfiguration UI { get; } [NotNull] - public ModuleEntityObjectPropertyExtensionApiConfiguration Api { get; } + public ExtensionPropertyApiConfiguration Api { get; } - public ModuleEntityObjectPropertyExtensionConfiguration( - [NotNull] ModuleEntityObjectExtensionConfiguration entityObjectExtensionConfiguration, + public ExtensionPropertyConfiguration( + [NotNull] EntityExtensionConfiguration entityExtensionConfiguration, [NotNull] Type type, [NotNull] string name) { - EntityObjectExtensionConfiguration = Check.NotNull(entityObjectExtensionConfiguration, nameof(entityObjectExtensionConfiguration)); + EntityExtensionConfiguration = Check.NotNull(entityExtensionConfiguration, nameof(entityExtensionConfiguration)); Type = Check.NotNull(type, nameof(type)); Name = Check.NotNull(name, nameof(name)); - Configuration = new Dictionary(); + Configuration = new Dictionary(); Attributes = new List(); Validators = new List>(); - Entity = new ModuleEntityObjectPropertyExtensionEntityConfiguration(); - UI = new ModuleEntityObjectPropertyExtensionUIConfiguration(); - Api = new ModuleEntityObjectPropertyExtensionApiConfiguration(); + Entity = new ExtensionPropertyEntityConfiguration(); + UI = new ExtensionPropertyUiConfiguration(); + Api = new ExtensionPropertyApiConfiguration(); } } } \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyConfigurationDictionary.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyConfigurationDictionary.cs new file mode 100644 index 0000000000..b21e659a38 --- /dev/null +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyConfigurationDictionary.cs @@ -0,0 +1,9 @@ +using System.Collections.Generic; + +namespace Volo.Abp.ObjectExtending.Modularity +{ + public class ExtensionPropertyConfigurationDictionary : Dictionary + { + + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiUpdateConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyEntityConfiguration.cs similarity index 71% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiUpdateConfiguration.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyEntityConfiguration.cs index 58355f44fa..3380d11658 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiUpdateConfiguration.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyEntityConfiguration.cs @@ -1,6 +1,6 @@ namespace Volo.Abp.ObjectExtending.Modularity { - public class ModuleEntityObjectPropertyExtensionApiUpdateConfiguration + public class ExtensionPropertyEntityConfiguration { /// /// Default: true. diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiConfiguration.cs new file mode 100644 index 0000000000..aa581228bd --- /dev/null +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiConfiguration.cs @@ -0,0 +1,23 @@ +using JetBrains.Annotations; + +namespace Volo.Abp.ObjectExtending.Modularity +{ + public class ExtensionPropertyUiConfiguration + { + [NotNull] + public ExtensionPropertyUiTableConfiguration OnTable { get; } + + [NotNull] + public ExtensionPropertyUiFormConfiguration OnCreateForm { get; } + + [NotNull] + public ExtensionPropertyUiFormConfiguration OnEditForm { get; } + + public ExtensionPropertyUiConfiguration() + { + OnTable = new ExtensionPropertyUiTableConfiguration(); + OnCreateForm = new ExtensionPropertyUiFormConfiguration(); + OnEditForm = new ExtensionPropertyUiFormConfiguration(); + } + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUIFormConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiFormConfiguration.cs similarity index 71% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUIFormConfiguration.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiFormConfiguration.cs index 48de16ab49..77434d4c03 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUIFormConfiguration.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiFormConfiguration.cs @@ -1,6 +1,6 @@ namespace Volo.Abp.ObjectExtending.Modularity { - public class ModuleEntityObjectPropertyExtensionUIFormConfiguration + public class ExtensionPropertyUiFormConfiguration { /// /// Default: true. diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUITableConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiTableConfiguration.cs similarity index 71% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUITableConfiguration.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiTableConfiguration.cs index f42bbac1a3..4c95e1a02f 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUITableConfiguration.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ExtensionPropertyUiTableConfiguration.cs @@ -1,6 +1,6 @@ namespace Volo.Abp.ObjectExtending.Modularity { - public class ModuleEntityObjectPropertyExtensionUITableConfiguration + public class ExtensionPropertyUiTableConfiguration { /// /// Default: true. diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectExtensionConfigurationDictionary.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectExtensionConfigurationDictionary.cs deleted file mode 100644 index 73d78b808e..0000000000 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectExtensionConfigurationDictionary.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.Collections.Generic; - -namespace Volo.Abp.ObjectExtending.Modularity -{ - public class ModuleEntityObjectExtensionConfigurationDictionary : Dictionary - { - - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiConfiguration.cs deleted file mode 100644 index ff195d2653..0000000000 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionApiConfiguration.cs +++ /dev/null @@ -1,23 +0,0 @@ -using JetBrains.Annotations; - -namespace Volo.Abp.ObjectExtending.Modularity -{ - public class ModuleEntityObjectPropertyExtensionApiConfiguration - { - [NotNull] - public ModuleEntityObjectPropertyExtensionApiGetConfiguration OnGet { get; } - - [NotNull] - public ModuleEntityObjectPropertyExtensionApiCreateConfiguration OnCreate { get; } - - [NotNull] - public ModuleEntityObjectPropertyExtensionApiUpdateConfiguration OnUpdate { get; } - - public ModuleEntityObjectPropertyExtensionApiConfiguration() - { - OnGet = new ModuleEntityObjectPropertyExtensionApiGetConfiguration(); - OnCreate = new ModuleEntityObjectPropertyExtensionApiCreateConfiguration(); - OnUpdate = new ModuleEntityObjectPropertyExtensionApiUpdateConfiguration(); - } - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionConfigurationDictionary.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionConfigurationDictionary.cs deleted file mode 100644 index 4b7e7e3ddb..0000000000 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionConfigurationDictionary.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.Collections.Generic; - -namespace Volo.Abp.ObjectExtending.Modularity -{ - public class ModuleEntityObjectPropertyExtensionConfigurationDictionary : Dictionary - { - - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUIConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUIConfiguration.cs deleted file mode 100644 index 6465497ee6..0000000000 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleEntityObjectPropertyExtensionUIConfiguration.cs +++ /dev/null @@ -1,23 +0,0 @@ -using JetBrains.Annotations; - -namespace Volo.Abp.ObjectExtending.Modularity -{ - public class ModuleEntityObjectPropertyExtensionUIConfiguration - { - [NotNull] - public ModuleEntityObjectPropertyExtensionUITableConfiguration OnTable { get; } - - [NotNull] - public ModuleEntityObjectPropertyExtensionUIFormConfiguration OnCreateForm { get; } - - [NotNull] - public ModuleEntityObjectPropertyExtensionUIFormConfiguration OnEditForm { get; } - - public ModuleEntityObjectPropertyExtensionUIConfiguration() - { - OnTable = new ModuleEntityObjectPropertyExtensionUITableConfiguration(); - OnCreateForm = new ModuleEntityObjectPropertyExtensionUIFormConfiguration(); - OnEditForm = new ModuleEntityObjectPropertyExtensionUIFormConfiguration(); - } - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfiguration.cs new file mode 100644 index 0000000000..cc09d1bad9 --- /dev/null +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfiguration.cs @@ -0,0 +1,20 @@ +using System.Collections.Generic; +using JetBrains.Annotations; + +namespace Volo.Abp.ObjectExtending.Modularity +{ + public class ModuleExtensionConfiguration + { + [NotNull] + public EntityExtensionConfigurationDictionary Entities { get; } + + [NotNull] + public Dictionary Configuration { get; } + + public ModuleExtensionConfiguration() + { + Entities = new EntityExtensionConfigurationDictionary(); + Configuration = new Dictionary(); + } + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationDictionary.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationDictionary.cs new file mode 100644 index 0000000000..a5713ed62d --- /dev/null +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationDictionary.cs @@ -0,0 +1,9 @@ +using System.Collections.Generic; + +namespace Volo.Abp.ObjectExtending.Modularity +{ + public class ModuleExtensionConfigurationDictionary : Dictionary + { + + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationDictionaryExtensions.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationDictionaryExtensions.cs similarity index 64% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationDictionaryExtensions.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationDictionaryExtensions.cs index 927c05fa15..5eab8e38b9 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationDictionaryExtensions.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationDictionaryExtensions.cs @@ -4,13 +4,13 @@ using JetBrains.Annotations; namespace Volo.Abp.ObjectExtending.Modularity { - public static class ModuleObjectExtensionConfigurationDictionaryExtensions + public static class ModuleExtensionConfigurationDictionaryExtensions { - public static ModuleObjectExtensionConfigurationDictionary ConfigureModule( - [NotNull] this ModuleObjectExtensionConfigurationDictionary configurationDictionary, + public static ModuleExtensionConfigurationDictionary ConfigureModule( + [NotNull] this ModuleExtensionConfigurationDictionary configurationDictionary, [NotNull] string moduleName, [NotNull] Action configureAction) - where T : ModuleObjectExtensionConfiguration, new() + where T : ModuleExtensionConfiguration, new() { Check.NotNull(moduleName, nameof(moduleName)); Check.NotNull(configureAction, nameof(configureAction)); diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationExtensions.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationExtensions.cs similarity index 55% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationExtensions.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationExtensions.cs index 137002418a..9dbe3a743f 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationExtensions.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationExtensions.cs @@ -3,17 +3,17 @@ using System.Collections.Generic; namespace Volo.Abp.ObjectExtending.Modularity { - public static class ModuleObjectExtensionConfigurationExtensions + public static class ModuleExtensionConfigurationExtensions { - public static T ConfigureObject( + public static T ConfigureEntity( this T objectConfiguration, string objectName, - Action configureAction) - where T : ModuleObjectExtensionConfiguration + Action configureAction) + where T : ModuleExtensionConfiguration { var configuration = objectConfiguration.Entities.GetOrAdd( objectName, - () => new ModuleEntityObjectExtensionConfiguration() + () => new EntityExtensionConfiguration() ); configureAction(configuration); diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationHelper.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationHelper.cs similarity index 78% rename from framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationHelper.cs rename to framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationHelper.cs index a975f00102..1f1edd757e 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationHelper.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleExtensionConfigurationHelper.cs @@ -4,14 +4,14 @@ using JetBrains.Annotations; namespace Volo.Abp.ObjectExtending.Modularity { - public static class ModuleObjectExtensionConfigurationHelper + public static class ModuleExtensionConfigurationHelper { - public static void ApplyModuleObjectExtensionConfigurationToEntity( + public static void ApplyEntityConfigurationToEntity( string moduleName, - string objectName, + string entityName, Type entityType) { - foreach (var propertyConfig in GetPropertyConfigurations(moduleName, objectName)) + foreach (var propertyConfig in GetPropertyConfigurations(moduleName, entityName)) { if (propertyConfig.Entity.IsAvailable && entityType != null) @@ -21,7 +21,7 @@ namespace Volo.Abp.ObjectExtending.Modularity } } - public static void ApplyModuleObjectExtensionConfigurationToApi( + public static void ApplyEntityConfigurationToApi( string moduleName, string objectName, Type[] getApiTypes = null, @@ -55,13 +55,13 @@ namespace Volo.Abp.ObjectExtending.Modularity } } - public static void ApplyModuleObjectExtensionConfigurationToUI( + public static void ApplyEntityConfigurationToUi( string moduleName, - string objectName, + string entityName, Type[] createFormTypes = null, Type[] editFormTypes = null) { - foreach (var propertyConfig in GetPropertyConfigurations(moduleName, objectName)) + foreach (var propertyConfig in GetPropertyConfigurations(moduleName, entityName)) { if (!propertyConfig.IsAvailableToClients) { @@ -82,9 +82,9 @@ namespace Volo.Abp.ObjectExtending.Modularity } } - public static void ApplyModuleObjectExtensionConfigurations( + public static void ApplyEntityConfigurations( string moduleName, - string objectName, + string entityName, Type entityType = null, Type[] createFormTypes = null, Type[] editFormTypes = null, @@ -94,51 +94,51 @@ namespace Volo.Abp.ObjectExtending.Modularity { if (entityType != null) { - ApplyModuleObjectExtensionConfigurationToEntity( + ApplyEntityConfigurationToEntity( moduleName, - objectName, + entityName, entityType ); } - ApplyModuleObjectExtensionConfigurationToApi( + ApplyEntityConfigurationToApi( moduleName, - objectName, + entityName, getApiTypes: getApiTypes, createApiTypes: createApiTypes, updateApiTypes: updateApiTypes ); - ApplyModuleObjectExtensionConfigurationToUI( + ApplyEntityConfigurationToUi( moduleName, - objectName, + entityName, createFormTypes: createFormTypes, editFormTypes: editFormTypes ); } [NotNull] - public static IEnumerable GetPropertyConfigurations( + public static IEnumerable GetPropertyConfigurations( string moduleName, - string objectName) + string entityName) { var moduleConfig = ObjectExtensionManager.Instance.Modules().GetOrDefault(moduleName); if (moduleConfig == null) { - return Array.Empty(); + return Array.Empty(); } - var objectConfig = moduleConfig.Entities.GetOrDefault(objectName); + var objectConfig = moduleConfig.Entities.GetOrDefault(entityName); if (objectConfig == null) { - return Array.Empty(); + return Array.Empty(); } return objectConfig.GetProperties(); } public static void ApplyPropertyConfigurationToTypes( - ModuleEntityObjectPropertyExtensionConfiguration propertyConfig, + ExtensionPropertyConfiguration propertyConfig, Type[] types) { ObjectExtensionManager.Instance diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfiguration.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfiguration.cs deleted file mode 100644 index 14470d1a17..0000000000 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfiguration.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Volo.Abp.ObjectExtending.Modularity -{ - public class ModuleObjectExtensionConfiguration - { - public ModuleEntityObjectExtensionConfigurationDictionary Entities { get; set; } - - public ModuleObjectExtensionConfiguration() - { - Entities = new ModuleEntityObjectExtensionConfigurationDictionary(); - } - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationDictionary.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationDictionary.cs deleted file mode 100644 index 656de2e947..0000000000 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/Modularity/ModuleObjectExtensionConfigurationDictionary.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.Collections.Generic; - -namespace Volo.Abp.ObjectExtending.Modularity -{ - public class ModuleObjectExtensionConfigurationDictionary : Dictionary - { - - } -} \ No newline at end of file diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ModuleObjectExtensionManagerExtensions.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ModuleObjectExtensionManagerExtensions.cs index 7a1422f2f6..71339f725f 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ModuleObjectExtensionManagerExtensions.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ModuleObjectExtensionManagerExtensions.cs @@ -8,15 +8,15 @@ namespace Volo.Abp.ObjectExtending { private const string ObjectExtensionManagerConfigurationKey = "_Modules"; - public static ModuleObjectExtensionConfigurationDictionary Modules( + public static ModuleExtensionConfigurationDictionary Modules( [NotNull]this ObjectExtensionManager objectExtensionManager) { Check.NotNull(objectExtensionManager, nameof(objectExtensionManager)); return objectExtensionManager.Configuration.GetOrAdd( ObjectExtensionManagerConfigurationKey, - () => new ModuleObjectExtensionConfigurationDictionary() - ) as ModuleObjectExtensionConfigurationDictionary; + () => new ModuleExtensionConfigurationDictionary() + ) as ModuleExtensionConfigurationDictionary; } } } diff --git a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleExtensionConfiguration.cs b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleExtensionConfiguration.cs new file mode 100644 index 0000000000..fc057eccce --- /dev/null +++ b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleExtensionConfiguration.cs @@ -0,0 +1,9 @@ +using Volo.Abp.ObjectExtending.Modularity; + +namespace Volo.Abp.ObjectExtending +{ + public class IdentityModuleExtensionConfiguration : ModuleExtensionConfiguration + { + + } +} \ No newline at end of file diff --git a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleExtensionConfigurationExtensions.cs b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleExtensionConfigurationExtensions.cs new file mode 100644 index 0000000000..b7a8877034 --- /dev/null +++ b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleExtensionConfigurationExtensions.cs @@ -0,0 +1,18 @@ +using System; +using Volo.Abp.ObjectExtending.Modularity; + +namespace Volo.Abp.ObjectExtending +{ + public static class IdentityModuleExtensionConfigurationExtensions + { + public static IdentityModuleExtensionConfiguration ConfigureUser( + this IdentityModuleExtensionConfiguration configurations, + Action configureAction) + { + return configurations.ConfigureEntity( + "User", + configureAction + ); + } + } +} \ No newline at end of file diff --git a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfiguration.cs b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfiguration.cs deleted file mode 100644 index 4d80ed897e..0000000000 --- a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfiguration.cs +++ /dev/null @@ -1,9 +0,0 @@ -using Volo.Abp.ObjectExtending.Modularity; - -namespace Volo.Abp.ObjectExtending -{ - public class IdentityModuleObjectExtensionConfiguration : ModuleObjectExtensionConfiguration - { - - } -} \ No newline at end of file diff --git a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfigurationExtensions.cs b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfigurationExtensions.cs deleted file mode 100644 index 31d24d242b..0000000000 --- a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfigurationExtensions.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System; -using Volo.Abp.ObjectExtending.Modularity; - -namespace Volo.Abp.ObjectExtending -{ - public static class IdentityModuleObjectExtensionConfigurationExtensions - { - public static IdentityModuleObjectExtensionConfiguration ConfigureUser( - this IdentityModuleObjectExtensionConfiguration configurations, - Action configureAction) - { - return configurations.ConfigureObject( - "User", - configureAction - ); - } - } -} \ No newline at end of file diff --git a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfigurationsExtensions.cs b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfigurationsExtensions.cs index 8ef25a5eb4..a8422314ae 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfigurationsExtensions.cs +++ b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/ObjectExtending/IdentityModuleObjectExtensionConfigurationsExtensions.cs @@ -5,9 +5,9 @@ namespace Volo.Abp.ObjectExtending { public static class IdentityModuleObjectExtensionConfigurationsExtensions { - public static ModuleObjectExtensionConfigurationDictionary ConfigureIdentity( - this ModuleObjectExtensionConfigurationDictionary modules, - Action configureAction) + public static ModuleExtensionConfigurationDictionary ConfigureIdentity( + this ModuleExtensionConfigurationDictionary modules, + Action configureAction) { return modules.ConfigureModule( "Identity", diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs index 6657184803..f7eea9fb5c 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs @@ -48,7 +48,7 @@ namespace Volo.Abp.Identity public override void PostConfigureServices(ServiceConfigurationContext context) { - ModuleObjectExtensionConfigurationHelper.ApplyModuleObjectExtensionConfigurationToEntity( + ModuleExtensionConfigurationHelper.ApplyEntityConfigurationToEntity( "Identity", "User", typeof(IdentityUser)