From 2068a4d318c2a407768b1d44f6966e996e0b464f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Sun, 11 Mar 2018 00:00:24 +0300 Subject: [PATCH] Created Volo.Abp.Ddd.Domain module --- Volo.Abp.sln | 7 ++++ .../AbpDeskApplicationContractsModule.cs | 3 +- .../AbpDesk/AbpDeskDomainModule.cs | 3 +- .../AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs | 3 +- .../Volo/Abp/ISoftDelete.cs | 2 +- .../ServiceCollectionRepositoryExtensions.cs | 0 .../Volo.Abp.Ddd.Domain.csproj | 26 +++++++++++++ .../Volo.Abp.Ddd.Domain.csproj.DotSettings | 2 + .../CommonDbContextRegistrationOptions.cs | 0 ...mmonDbContextRegistrationOptionsBuilder.cs | 0 .../Volo/Abp/Domain/AbpDddDomainModule.cs | 27 +++++++++++++ .../Volo/Abp/Domain/Entities/AggregateRoot.cs | 0 .../Volo/Abp/Domain/Entities/Entity.cs | 0 .../Volo/Abp/Domain/Entities/EntityHelper.cs | 0 .../Entities/EntityNotFoundException.cs | 0 .../Entities/Events/DomainEventEntry.cs | 0 .../Entities/Events/EntityChangeEntry.cs | 0 .../Events/EntityChangeEventHelper.cs | 0 .../Entities/Events/EntityChangeReport.cs | 0 .../Entities/Events/EntityChangeType.cs | 0 .../Entities/Events/EntityChangedEventData.cs | 0 .../Events/EntityChangingEventData.cs | 0 .../Entities/Events/EntityCreatedEventData.cs | 0 .../Events/EntityCreatingEventData.cs | 0 .../Entities/Events/EntityDeletedEventData.cs | 0 .../Events/EntityDeletingEventData.cs | 0 .../Domain/Entities/Events/EntityEventData.cs | 0 .../Entities/Events/EntityUpdatedEventData.cs | 0 .../Events/EntityUpdatingEventData.cs | 0 .../Events/IEntityChangeEventHelper.cs | 0 .../Events/NullEntityChangeEventHelper.cs | 0 .../Abp/Domain/Entities/IAggregateRoot.cs | 0 .../Volo/Abp/Domain/Entities/IEntity.cs | 0 .../Domain/Entities/IGeneratesDomainEvents.cs | 0 .../Domain/Entities/IHasConcurrencyStamp.cs | 0 .../Repositories/BasicRepositoryBase.cs | 0 .../Domain/Repositories/IBasicRepository.cs | 0 .../Abp/Domain/Repositories/IRepository.cs | 0 .../Repositories/ISupportsExplicitLoading.cs | 0 .../Abp/Domain/Repositories/RepositoryBase.cs | 0 .../Repositories/RepositoryExtensions.cs | 0 .../Repositories/RepositoryRegistrarBase.cs | 0 .../Volo/Abp/Domain/Services/DomainService.cs | 22 +++++++++++ .../Abp/Domain/Services/IDomainService.cs | 0 .../Volo/Abp/Domain/Values/ValueObject.cs | 0 src/Volo.Abp.Ddd/Volo.Abp.Ddd.csproj | 8 +--- src/Volo.Abp.Ddd/Volo/Abp/AbpServiceBase.cs | 38 ------------------- .../AbpDddApplicationModule.cs} | 25 ++++-------- .../Services/ApplicationService.cs | 38 ++++++++++++++++--- .../Volo/Abp/Domain/Services/DomainService.cs | 7 ---- .../AbpEntityFrameworkCoreModule.cs | 3 +- .../AbpIdentityApplicationContractsModule.cs | 3 +- .../Abp/Identity/AbpIdentityDomainModule.cs | 3 +- .../AbpIdentityApplicationContractsModule.cs | 3 +- .../AbpIdentityServerDomainModule.cs | 3 +- .../Volo/Abp/MemoryDb/AbpMemoryDbModule.cs | 3 +- .../Volo/Abp/MongoDB/AbpMongoDbModule.cs | 3 +- ...pMultiTenancyApplicationContractsModule.cs | 3 +- .../AbpMultiTenancyDomainModule.cs | 3 +- ...bpPermissionsApplicationContractsModule.cs | 3 +- .../Permissions/AbpPermissionsDomainModule.cs | 3 +- .../Abp/Settings/AbpSettingsDomainModule.cs | 3 +- .../Volo/Abp/Settings/SettingStore.cs | 9 +++-- .../Volo/Abp/AutoMapper/AutofacTestModule.cs | 3 +- .../Volo/Abp/TestApp/TestAppModule.cs | 3 +- 65 files changed, 166 insertions(+), 96 deletions(-) rename src/{Volo.Abp.Ddd => Volo.Abp.Data}/Volo/Abp/ISoftDelete.cs (98%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Microsoft/Extensions/DependencyInjection/ServiceCollectionRepositoryExtensions.cs (100%) create mode 100644 src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj create mode 100644 src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj.DotSettings rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/DependencyInjection/CommonDbContextRegistrationOptions.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/DependencyInjection/ICommonDbContextRegistrationOptionsBuilder.cs (100%) create mode 100644 src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/AbpDddDomainModule.cs rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/AggregateRoot.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Entity.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/EntityHelper.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/EntityNotFoundException.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/DomainEventEntry.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityChangeEntry.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityChangeEventHelper.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityChangeReport.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityChangeType.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityChangedEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityChangingEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityCreatedEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityCreatingEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityDeletedEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityDeletingEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityUpdatedEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/EntityUpdatingEventData.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/IEntityChangeEventHelper.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/Events/NullEntityChangeEventHelper.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/IAggregateRoot.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/IEntity.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/IGeneratesDomainEvents.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Entities/IHasConcurrencyStamp.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Repositories/BasicRepositoryBase.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Repositories/IBasicRepository.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Repositories/IRepository.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Repositories/ISupportsExplicitLoading.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Repositories/RepositoryBase.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Repositories/RepositoryExtensions.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Repositories/RepositoryRegistrarBase.cs (100%) create mode 100644 src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Services/DomainService.cs rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Services/IDomainService.cs (100%) rename src/{Volo.Abp.Ddd => Volo.Abp.Ddd.Domain}/Volo/Abp/Domain/Values/ValueObject.cs (100%) delete mode 100644 src/Volo.Abp.Ddd/Volo/Abp/AbpServiceBase.cs rename src/Volo.Abp.Ddd/Volo/Abp/{AbpDddModule.cs => Application/AbpDddApplicationModule.cs} (58%) delete mode 100644 src/Volo.Abp.Ddd/Volo/Abp/Domain/Services/DomainService.cs diff --git a/Volo.Abp.sln b/Volo.Abp.sln index b83fd2be5d..06d52df3c0 100644 --- a/Volo.Abp.sln +++ b/Volo.Abp.sln @@ -306,6 +306,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Uow", "src\Volo.Ab EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Uow.Tests", "test\Volo.Abp.Uow.Tests\Volo.Abp.Uow.Tests.csproj", "{9FC49D82-04E5-4170-8618-682BD3350910}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Ddd.Domain", "src\Volo.Abp.Ddd.Domain\Volo.Abp.Ddd.Domain.csproj", "{D1318094-7907-4826-B5F3-CFFC741F235F}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -808,6 +810,10 @@ Global {9FC49D82-04E5-4170-8618-682BD3350910}.Debug|Any CPU.Build.0 = Debug|Any CPU {9FC49D82-04E5-4170-8618-682BD3350910}.Release|Any CPU.ActiveCfg = Release|Any CPU {9FC49D82-04E5-4170-8618-682BD3350910}.Release|Any CPU.Build.0 = Release|Any CPU + {D1318094-7907-4826-B5F3-CFFC741F235F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D1318094-7907-4826-B5F3-CFFC741F235F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D1318094-7907-4826-B5F3-CFFC741F235F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D1318094-7907-4826-B5F3-CFFC741F235F}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -957,6 +963,7 @@ Global {627B88DB-BDCF-4D92-8454-EFE95F4AFB7A} = {37087D1B-3693-4E96-983D-A69F210BDE53} {23C5849D-4C09-4588-AE32-E31F03B7ED63} = {4C753F64-0C93-4D65-96C2-A40893AFC1E8} {9FC49D82-04E5-4170-8618-682BD3350910} = {37087D1B-3693-4E96-983D-A69F210BDE53} + {D1318094-7907-4826-B5F3-CFFC741F235F} = {4C753F64-0C93-4D65-96C2-A40893AFC1E8} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {BB97ECF4-9A84-433F-A80B-2A3285BDD1D5} diff --git a/src/AbpDesk/AbpDesk.Application.Contracts/AbpDesk/AbpDeskApplicationContractsModule.cs b/src/AbpDesk/AbpDesk.Application.Contracts/AbpDesk/AbpDeskApplicationContractsModule.cs index c72a8b9489..416371ac8b 100644 --- a/src/AbpDesk/AbpDesk.Application.Contracts/AbpDesk/AbpDeskApplicationContractsModule.cs +++ b/src/AbpDesk/AbpDesk.Application.Contracts/AbpDesk/AbpDeskApplicationContractsModule.cs @@ -1,10 +1,11 @@ using Volo.Abp; +using Volo.Abp.Application; using Volo.Abp.Modularity; namespace AbpDesk { [DependsOn(typeof(AbpCommonModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] public class AbpDeskApplicationContractsModule : AbpModule { diff --git a/src/AbpDesk/AbpDesk.Domain/AbpDesk/AbpDeskDomainModule.cs b/src/AbpDesk/AbpDesk.Domain/AbpDesk/AbpDeskDomainModule.cs index beb05f08aa..3ed7a44381 100644 --- a/src/AbpDesk/AbpDesk.Domain/AbpDesk/AbpDeskDomainModule.cs +++ b/src/AbpDesk/AbpDesk.Domain/AbpDesk/AbpDeskDomainModule.cs @@ -1,11 +1,12 @@ using Microsoft.Extensions.DependencyInjection; using Volo.Abp; +using Volo.Abp.Application; using Volo.Abp.Modularity; namespace AbpDesk { [DependsOn(typeof(AbpCommonModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] public class AbpDeskDomainModule : AbpModule { public override void ConfigureServices(IServiceCollection services) diff --git a/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs b/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs index aa4e373691..85b8e1075e 100644 --- a/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs +++ b/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs @@ -15,6 +15,7 @@ using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.AspNetCore.Mvc.Infrastructure; using Microsoft.AspNetCore.Mvc.ViewComponents; using Microsoft.Extensions.DependencyInjection.Extensions; +using Volo.Abp.Application; using Volo.Abp.AspNetCore.Mvc.Conventions; using Volo.Abp.AspNetCore.Mvc.DependencyInjection; using Volo.Abp.AspNetCore.Mvc.Localization; @@ -26,7 +27,7 @@ using Volo.Abp.Ui; namespace Volo.Abp.AspNetCore.Mvc { [DependsOn(typeof(AbpHttpModule))] - [DependsOn(typeof(AbpDddModule))] //TODO: Ideally, AbpAspNetCoreMvcModule should not depend on Ddd module...? + [DependsOn(typeof(AbpDddApplicationModule))] //TODO: Ideally, AbpAspNetCoreMvcModule should not depend on Ddd module...? [DependsOn(typeof(AbpAspNetCoreModule))] [DependsOn(typeof(AbpUiModule))] public class AbpAspNetCoreMvcModule : AbpModule diff --git a/src/Volo.Abp.Ddd/Volo/Abp/ISoftDelete.cs b/src/Volo.Abp.Data/Volo/Abp/ISoftDelete.cs similarity index 98% rename from src/Volo.Abp.Ddd/Volo/Abp/ISoftDelete.cs rename to src/Volo.Abp.Data/Volo/Abp/ISoftDelete.cs index f1759a0bf4..cfdd8d2419 100644 --- a/src/Volo.Abp.Ddd/Volo/Abp/ISoftDelete.cs +++ b/src/Volo.Abp.Data/Volo/Abp/ISoftDelete.cs @@ -6,7 +6,7 @@ /// marked as IsDeleted = true in the database, /// but can not be retrieved to the application normally. /// - public interface ISoftDelete //TODO: Move to another assembly. Data? + public interface ISoftDelete //TODO: Move to another assembly? { /// /// Used to mark an Entity as 'Deleted'. diff --git a/src/Volo.Abp.Ddd/Microsoft/Extensions/DependencyInjection/ServiceCollectionRepositoryExtensions.cs b/src/Volo.Abp.Ddd.Domain/Microsoft/Extensions/DependencyInjection/ServiceCollectionRepositoryExtensions.cs similarity index 100% rename from src/Volo.Abp.Ddd/Microsoft/Extensions/DependencyInjection/ServiceCollectionRepositoryExtensions.cs rename to src/Volo.Abp.Ddd.Domain/Microsoft/Extensions/DependencyInjection/ServiceCollectionRepositoryExtensions.cs diff --git a/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj b/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj new file mode 100644 index 0000000000..9f2959b973 --- /dev/null +++ b/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj @@ -0,0 +1,26 @@ + + + + + + netstandard2.0 + Volo.Abp.Ddd.Domain + Volo.Abp.Ddd.Domain + $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; + false + false + false + + + + + + + + + + + + + + diff --git a/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj.DotSettings b/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj.DotSettings new file mode 100644 index 0000000000..58ad6c8854 --- /dev/null +++ b/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj.DotSettings @@ -0,0 +1,2 @@ + + CSharp71 \ No newline at end of file diff --git a/src/Volo.Abp.Ddd/Volo/Abp/DependencyInjection/CommonDbContextRegistrationOptions.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/DependencyInjection/CommonDbContextRegistrationOptions.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/DependencyInjection/CommonDbContextRegistrationOptions.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/DependencyInjection/CommonDbContextRegistrationOptions.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/DependencyInjection/ICommonDbContextRegistrationOptionsBuilder.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/DependencyInjection/ICommonDbContextRegistrationOptionsBuilder.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/DependencyInjection/ICommonDbContextRegistrationOptionsBuilder.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/DependencyInjection/ICommonDbContextRegistrationOptionsBuilder.cs diff --git a/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/AbpDddDomainModule.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/AbpDddDomainModule.cs new file mode 100644 index 0000000000..a142ce627e --- /dev/null +++ b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/AbpDddDomainModule.cs @@ -0,0 +1,27 @@ +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Data; +using Volo.Abp.EventBus; +using Volo.Abp.Guids; +using Volo.Abp.Modularity; +using Volo.Abp.MultiTenancy; +using Volo.Abp.Threading; +using Volo.Abp.Uow; + +namespace Volo.Abp.Domain +{ + [DependsOn( + typeof(AbpDataModule), + typeof(AbpEventBusModule), + typeof(AbpGuidsModule), + typeof(AbpMultiTenancyAbstractionsModule), + typeof(AbpThreadingModule), + typeof(AbpUnitOfWorkModule) + )] + public class AbpDddDomainModule : AbpModule + { + public override void ConfigureServices(IServiceCollection services) + { + services.AddAssemblyOf(); + } + } +} diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/AggregateRoot.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/AggregateRoot.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/AggregateRoot.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/AggregateRoot.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Entity.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Entity.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Entity.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Entity.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/EntityHelper.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/EntityHelper.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/EntityHelper.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/EntityHelper.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/EntityNotFoundException.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/EntityNotFoundException.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/EntityNotFoundException.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/EntityNotFoundException.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/DomainEventEntry.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/DomainEventEntry.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/DomainEventEntry.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/DomainEventEntry.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangeEntry.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangeEntry.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangeEntry.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangeEntry.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangeEventHelper.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangeEventHelper.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangeEventHelper.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangeEventHelper.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangeReport.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangeReport.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangeReport.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangeReport.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangeType.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangeType.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangeType.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangeType.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangedEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangedEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangedEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangedEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangingEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangingEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityChangingEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityChangingEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityCreatedEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityCreatedEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityCreatedEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityCreatedEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityCreatingEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityCreatingEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityCreatingEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityCreatingEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityDeletedEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityDeletedEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityDeletedEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityDeletedEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityDeletingEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityDeletingEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityDeletingEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityDeletingEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityUpdatedEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityUpdatedEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityUpdatedEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityUpdatedEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityUpdatingEventData.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityUpdatingEventData.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/EntityUpdatingEventData.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/EntityUpdatingEventData.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/IEntityChangeEventHelper.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/IEntityChangeEventHelper.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/IEntityChangeEventHelper.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/IEntityChangeEventHelper.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/NullEntityChangeEventHelper.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/NullEntityChangeEventHelper.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Events/NullEntityChangeEventHelper.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/Events/NullEntityChangeEventHelper.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/IAggregateRoot.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/IAggregateRoot.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/IAggregateRoot.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/IAggregateRoot.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/IEntity.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/IEntity.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/IEntity.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/IEntity.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/IGeneratesDomainEvents.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/IGeneratesDomainEvents.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/IGeneratesDomainEvents.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/IGeneratesDomainEvents.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/IHasConcurrencyStamp.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/IHasConcurrencyStamp.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/IHasConcurrencyStamp.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/IHasConcurrencyStamp.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/BasicRepositoryBase.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/BasicRepositoryBase.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/BasicRepositoryBase.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/BasicRepositoryBase.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/IBasicRepository.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/IBasicRepository.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/IBasicRepository.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/IBasicRepository.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/IRepository.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/IRepository.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/IRepository.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/IRepository.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/ISupportsExplicitLoading.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/ISupportsExplicitLoading.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/ISupportsExplicitLoading.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/ISupportsExplicitLoading.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/RepositoryBase.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/RepositoryBase.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/RepositoryBase.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/RepositoryBase.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/RepositoryExtensions.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/RepositoryExtensions.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/RepositoryExtensions.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/RepositoryExtensions.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/RepositoryRegistrarBase.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/RepositoryRegistrarBase.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Repositories/RepositoryRegistrarBase.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Repositories/RepositoryRegistrarBase.cs diff --git a/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Services/DomainService.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Services/DomainService.cs new file mode 100644 index 0000000000..60a77b0840 --- /dev/null +++ b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Services/DomainService.cs @@ -0,0 +1,22 @@ +using System; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; +using Volo.Abp.Guids; + +namespace Volo.Abp.Domain.Services +{ + public abstract class DomainService : IDomainService + { + public IGuidGenerator GuidGenerator { get; set; } + + public ILoggerFactory LoggerFactory { get; set; } + + protected ILogger Logger => _lazyLogger.Value; + private Lazy _lazyLogger => new Lazy(() => LoggerFactory?.CreateLogger(GetType().FullName) ?? NullLogger.Instance, true); + + protected DomainService() + { + GuidGenerator = SimpleGuidGenerator.Instance; + } + } +} \ No newline at end of file diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Services/IDomainService.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Services/IDomainService.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Services/IDomainService.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Services/IDomainService.cs diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Values/ValueObject.cs b/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Values/ValueObject.cs similarity index 100% rename from src/Volo.Abp.Ddd/Volo/Abp/Domain/Values/ValueObject.cs rename to src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Values/ValueObject.cs diff --git a/src/Volo.Abp.Ddd/Volo.Abp.Ddd.csproj b/src/Volo.Abp.Ddd/Volo.Abp.Ddd.csproj index f65e44e8fd..9c94ebe7b8 100644 --- a/src/Volo.Abp.Ddd/Volo.Abp.Ddd.csproj +++ b/src/Volo.Abp.Ddd/Volo.Abp.Ddd.csproj @@ -16,14 +16,10 @@ - - - + - - - + diff --git a/src/Volo.Abp.Ddd/Volo/Abp/AbpServiceBase.cs b/src/Volo.Abp.Ddd/Volo/Abp/AbpServiceBase.cs deleted file mode 100644 index 42bce4e12a..0000000000 --- a/src/Volo.Abp.Ddd/Volo/Abp/AbpServiceBase.cs +++ /dev/null @@ -1,38 +0,0 @@ -using System; -using Microsoft.Extensions.Logging; -using Microsoft.Extensions.Logging.Abstractions; -using Volo.Abp.Guids; -using Volo.Abp.MultiTenancy; -using Volo.Abp.ObjectMapping; -using Volo.Abp.Uow; - -namespace Volo.Abp -{ - public abstract class AbpServiceBase //TODO: This is not so related to DDD, can we move to another package or completely remove it..? - { - public IUnitOfWorkManager UnitOfWorkManager { get; set; } - - public IObjectMapper ObjectMapper { get; set; } - - public IGuidGenerator GuidGenerator { get; set; } - - public ILoggerFactory LoggerFactory { get; set; } - - public ICurrentTenant CurrentTenant { get; set; } - - protected IUnitOfWork CurrentUnitOfWork => UnitOfWorkManager?.Current; - - protected ILogger Logger => _lazyLogger.Value; - private Lazy _lazyLogger => new Lazy(() => LoggerFactory?.CreateLogger(GetType().FullName) ?? NullLogger.Instance, true); - - /* Will be added when developed - - Setting manager - - Localization manager and helper methods - */ - - protected AbpServiceBase() - { - GuidGenerator = SimpleGuidGenerator.Instance; - } - } -} diff --git a/src/Volo.Abp.Ddd/Volo/Abp/AbpDddModule.cs b/src/Volo.Abp.Ddd/Volo/Abp/Application/AbpDddApplicationModule.cs similarity index 58% rename from src/Volo.Abp.Ddd/Volo/Abp/AbpDddModule.cs rename to src/Volo.Abp.Ddd/Volo/Abp/Application/AbpDddApplicationModule.cs index 7e5ce91105..8d00cb9741 100644 --- a/src/Volo.Abp.Ddd/Volo/Abp/AbpDddModule.cs +++ b/src/Volo.Abp.Ddd/Volo/Abp/Application/AbpDddApplicationModule.cs @@ -2,34 +2,23 @@ using Microsoft.Extensions.DependencyInjection; using Volo.Abp.Application.Services; using Volo.Abp.Authorization; -using Volo.Abp.Data; -using Volo.Abp.EventBus; -using Volo.Abp.Guids; +using Volo.Abp.Domain; using Volo.Abp.Http; using Volo.Abp.Http.Modeling; using Volo.Abp.Modularity; -using Volo.Abp.MultiTenancy; using Volo.Abp.ObjectMapping; -using Volo.Abp.Threading; -using Volo.Abp.Uow; +using Volo.Abp.Session; using Volo.Abp.Validation; -namespace Volo.Abp +namespace Volo.Abp.Application { - //TODO: Consider to split this DDD package by layers! - - [DependsOn(typeof(AbpGuidsModule))] - [DependsOn(typeof(AbpDataModule))] + [DependsOn(typeof(AbpDddDomainModule))] + [DependsOn(typeof(AbpSessionModule))] [DependsOn(typeof(AbpObjectMappingModule))] - [DependsOn(typeof(AbpMultiTenancyAbstractionsModule))] - [DependsOn(typeof(AbpThreadingModule))] - [DependsOn(typeof(AbpEventBusModule))] [DependsOn(typeof(AbpValidationModule))] [DependsOn(typeof(AbpAuthorizationModule))] - [DependsOn(typeof(AbpGuidsModule))] - [DependsOn(typeof(AbpUnitOfWorkModule))] [DependsOn(typeof(AbpHttpAbstractionsModule))] - public class AbpDddModule : AbpModule + public class AbpDddApplicationModule : AbpModule { public override void ConfigureServices(IServiceCollection services) { @@ -39,7 +28,7 @@ namespace Volo.Abp options.IgnoredInterfaces.AddIfNotContains(typeof(IApplicationService)); }); - services.AddAssemblyOf(); + services.AddAssemblyOf(); } } } diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Application/Services/ApplicationService.cs b/src/Volo.Abp.Ddd/Volo/Abp/Application/Services/ApplicationService.cs index 7156aa25c9..692a11c2d7 100644 --- a/src/Volo.Abp.Ddd/Volo/Abp/Application/Services/ApplicationService.cs +++ b/src/Volo.Abp.Ddd/Volo/Abp/Application/Services/ApplicationService.cs @@ -1,9 +1,18 @@ +using System; using System.Collections.Generic; +using Microsoft.AspNetCore.Authorization; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Volo.Abp.Aspects; +using Volo.Abp.Guids; +using Volo.Abp.MultiTenancy; +using Volo.Abp.ObjectMapping; +using Volo.Abp.Session; +using Volo.Abp.Uow; namespace Volo.Abp.Application.Services { - public abstract class ApplicationService : AbpServiceBase, IApplicationService, IAvoidDuplicateCrossCuttingConcerns + public abstract class ApplicationService : IApplicationService, IAvoidDuplicateCrossCuttingConcerns { public static string[] CommonPostfixes { get; set; } = { "AppService", "ApplicationService", "Service" }; @@ -12,11 +21,28 @@ namespace Volo.Abp.Application.Services /// public List AppliedCrossCuttingConcerns { get; } = new List(); - /* Will be added when implemented - - AbpSession - - ... - */ + public IUnitOfWorkManager UnitOfWorkManager { get; set; } - //TODO: Add IPermissionChecker (but before split layers of DDD!) + public IObjectMapper ObjectMapper { get; set; } + + public IGuidGenerator GuidGenerator { get; set; } + + public ILoggerFactory LoggerFactory { get; set; } + + public ICurrentTenant CurrentTenant { get; set; } + + public ICurrentUser CurrentUser { get; set; } + + public IAuthorizationService AuthorizationService { get; set; } + + protected IUnitOfWork CurrentUnitOfWork => UnitOfWorkManager?.Current; + + protected ILogger Logger => _lazyLogger.Value; + private Lazy _lazyLogger => new Lazy(() => LoggerFactory?.CreateLogger(GetType().FullName) ?? NullLogger.Instance, true); + + protected ApplicationService() + { + GuidGenerator = SimpleGuidGenerator.Instance; + } } } \ No newline at end of file diff --git a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Services/DomainService.cs b/src/Volo.Abp.Ddd/Volo/Abp/Domain/Services/DomainService.cs deleted file mode 100644 index bef016b66f..0000000000 --- a/src/Volo.Abp.Ddd/Volo/Abp/Domain/Services/DomainService.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace Volo.Abp.Domain.Services -{ - public abstract class DomainService : AbpServiceBase, IDomainService - { - - } -} \ No newline at end of file diff --git a/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpEntityFrameworkCoreModule.cs b/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpEntityFrameworkCoreModule.cs index 013e2959b4..976f66eaa1 100644 --- a/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpEntityFrameworkCoreModule.cs +++ b/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpEntityFrameworkCoreModule.cs @@ -1,12 +1,13 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; +using Volo.Abp.Application; using Volo.Abp.Modularity; using Volo.Abp.Uow.EntityFrameworkCore; namespace Volo.Abp.EntityFrameworkCore { [DependsOn(typeof(AbpCommonModule))] - [DependsOn(typeof(AbpDddModule))] //TODO: Is it possible to not depend DDD and seperate to another module? + [DependsOn(typeof(AbpDddApplicationModule))] //TODO: Is it possible to not depend DDD and seperate to another module? public class AbpEntityFrameworkCoreModule : AbpModule { public override void ConfigureServices(IServiceCollection services) diff --git a/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs b/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs index a5444b279e..63223c67bd 100644 --- a/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs +++ b/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Authorization; using Volo.Abp.Authorization.Permissions; using Volo.Abp.Modularity; @@ -8,7 +9,7 @@ namespace Volo.Abp.Identity { [DependsOn(typeof(AbpIdentityDomainSharedModule))] [DependsOn(typeof(AbpAuthorizationModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpPermissionsApplicationContractsModule))] public class AbpIdentityApplicationContractsModule : AbpModule { diff --git a/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs b/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs index ae29666b8e..f50d0f4a27 100644 --- a/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs +++ b/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs @@ -1,11 +1,12 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Modularity; using Volo.Abp.Permissions; namespace Volo.Abp.Identity { [DependsOn(typeof(AbpPermissionsDomainModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpIdentityDomainSharedModule))] public class AbpIdentityDomainModule : AbpModule { diff --git a/src/Volo.Abp.IdentityServer.Application.Contracts/Volo/Abp/IdentityServer/AbpIdentityApplicationContractsModule.cs b/src/Volo.Abp.IdentityServer.Application.Contracts/Volo/Abp/IdentityServer/AbpIdentityApplicationContractsModule.cs index cad7e8a309..e9958fdfde 100644 --- a/src/Volo.Abp.IdentityServer.Application.Contracts/Volo/Abp/IdentityServer/AbpIdentityApplicationContractsModule.cs +++ b/src/Volo.Abp.IdentityServer.Application.Contracts/Volo/Abp/IdentityServer/AbpIdentityApplicationContractsModule.cs @@ -1,9 +1,10 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Modularity; namespace Volo.Abp.IdentityServer { - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpIdentityServerDomainSharedModule))] public class AbpIdentityServerApplicationContractsModule : AbpModule { diff --git a/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpIdentityServerDomainModule.cs b/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpIdentityServerDomainModule.cs index 3413afac9c..1989e7e252 100644 --- a/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpIdentityServerDomainModule.cs +++ b/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpIdentityServerDomainModule.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.AutoMapper; using Volo.Abp.Identity; using Volo.Abp.IdentityServer.AspNetIdentity; @@ -9,7 +10,7 @@ using Volo.Abp.Security; namespace Volo.Abp.IdentityServer { [DependsOn(typeof(AbpIdentityServerDomainSharedModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpAutoMapperModule))] [DependsOn(typeof(AbpIdentityDomainModule))] [DependsOn(typeof(AbpSecurityModule))] diff --git a/src/Volo.Abp.MemoryDb/Volo/Abp/MemoryDb/AbpMemoryDbModule.cs b/src/Volo.Abp.MemoryDb/Volo/Abp/MemoryDb/AbpMemoryDbModule.cs index 2ce9c17c9f..2567c61e5a 100644 --- a/src/Volo.Abp.MemoryDb/Volo/Abp/MemoryDb/AbpMemoryDbModule.cs +++ b/src/Volo.Abp.MemoryDb/Volo/Abp/MemoryDb/AbpMemoryDbModule.cs @@ -1,12 +1,13 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; +using Volo.Abp.Application; using Volo.Abp.Modularity; using Volo.Abp.Uow.MemoryDb; namespace Volo.Abp.MemoryDb { [DependsOn(typeof(AbpCommonModule))] - [DependsOn(typeof(AbpDddModule))] //TODO: Is it possible to not depend DDD and seperate to another module? + [DependsOn(typeof(AbpDddApplicationModule))] //TODO: Is it possible to not depend DDD and seperate to another module? public class AbpMemoryDbModule : AbpModule { public override void ConfigureServices(IServiceCollection services) diff --git a/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbModule.cs b/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbModule.cs index aab7acbd1d..50b34d43d7 100644 --- a/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbModule.cs +++ b/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbModule.cs @@ -1,12 +1,13 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; +using Volo.Abp.Application; using Volo.Abp.Modularity; using Volo.Abp.Uow.MongoDB; namespace Volo.Abp.MongoDB { [DependsOn(typeof(AbpCommonModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] public class AbpMongoDbModule : AbpModule { public override void ConfigureServices(IServiceCollection services) diff --git a/src/Volo.Abp.MultiTenancy.Application.Contracts/Volo/Abp/MultiTenancy/AbpMultiTenancyApplicationContractsModule.cs b/src/Volo.Abp.MultiTenancy.Application.Contracts/Volo/Abp/MultiTenancy/AbpMultiTenancyApplicationContractsModule.cs index fb22df7499..b0932f56e4 100644 --- a/src/Volo.Abp.MultiTenancy.Application.Contracts/Volo/Abp/MultiTenancy/AbpMultiTenancyApplicationContractsModule.cs +++ b/src/Volo.Abp.MultiTenancy.Application.Contracts/Volo/Abp/MultiTenancy/AbpMultiTenancyApplicationContractsModule.cs @@ -1,10 +1,11 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Authorization.Permissions; using Volo.Abp.Modularity; namespace Volo.Abp.MultiTenancy { - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpMultiTenancyDomainSharedModule))] public class AbpMultiTenancyApplicationContractsModule : AbpModule { diff --git a/src/Volo.Abp.MultiTenancy.Domain/Volo/Abp/MultiTenancy/AbpMultiTenancyDomainModule.cs b/src/Volo.Abp.MultiTenancy.Domain/Volo/Abp/MultiTenancy/AbpMultiTenancyDomainModule.cs index 2f5c264873..49c41bfd64 100644 --- a/src/Volo.Abp.MultiTenancy.Domain/Volo/Abp/MultiTenancy/AbpMultiTenancyDomainModule.cs +++ b/src/Volo.Abp.MultiTenancy.Domain/Volo/Abp/MultiTenancy/AbpMultiTenancyDomainModule.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.AutoMapper; using Volo.Abp.Data; using Volo.Abp.Modularity; @@ -9,7 +10,7 @@ namespace Volo.Abp.MultiTenancy [DependsOn(typeof(AbpMultiTenancyAbstractionsModule))] [DependsOn(typeof(AbpMultiTenancyDomainSharedModule))] [DependsOn(typeof(AbpDataModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpAutoMapperModule))] [DependsOn(typeof(AbpUiModule))] //TODO: It's not good to depend on the UI module. However, UserFriendlyException is inside it! public class AbpMultiTenancyDomainModule : AbpModule diff --git a/src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/AbpPermissionsApplicationContractsModule.cs b/src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/AbpPermissionsApplicationContractsModule.cs index 21bd2092ac..818d496083 100644 --- a/src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/AbpPermissionsApplicationContractsModule.cs +++ b/src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/AbpPermissionsApplicationContractsModule.cs @@ -1,9 +1,10 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Modularity; namespace Volo.Abp.Permissions { - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpPermissionsDomainSharedModule))] public class AbpPermissionsApplicationContractsModule : AbpModule { diff --git a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/AbpPermissionsDomainModule.cs b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/AbpPermissionsDomainModule.cs index 9d42682bbf..88d9e89007 100644 --- a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/AbpPermissionsDomainModule.cs +++ b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/AbpPermissionsDomainModule.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Authorization; using Volo.Abp.Caching; using Volo.Abp.Json; @@ -7,7 +8,7 @@ using Volo.Abp.Modularity; namespace Volo.Abp.Permissions { [DependsOn(typeof(AbpAuthorizationModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpPermissionsDomainSharedModule))] [DependsOn(typeof(AbpCachingModule))] [DependsOn(typeof(AbpJsonModule))] diff --git a/src/Volo.Abp.Settings.Domain/Volo/Abp/Settings/AbpSettingsDomainModule.cs b/src/Volo.Abp.Settings.Domain/Volo/Abp/Settings/AbpSettingsDomainModule.cs index 7bbb6659b8..5a0e7a812f 100644 --- a/src/Volo.Abp.Settings.Domain/Volo/Abp/Settings/AbpSettingsDomainModule.cs +++ b/src/Volo.Abp.Settings.Domain/Volo/Abp/Settings/AbpSettingsDomainModule.cs @@ -1,10 +1,11 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Modularity; namespace Volo.Abp.Settings { [DependsOn(typeof(AbpSettingsModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpSettingsDomainSharedModule))] public class AbpSettingsDomainModule : AbpModule { diff --git a/src/Volo.Abp.Settings.Domain/Volo/Abp/Settings/SettingStore.cs b/src/Volo.Abp.Settings.Domain/Volo/Abp/Settings/SettingStore.cs index 6312249fc7..ab90a99f71 100644 --- a/src/Volo.Abp.Settings.Domain/Volo/Abp/Settings/SettingStore.cs +++ b/src/Volo.Abp.Settings.Domain/Volo/Abp/Settings/SettingStore.cs @@ -2,16 +2,19 @@ using System.Linq; using System.Threading.Tasks; using Volo.Abp.DependencyInjection; +using Volo.Abp.Guids; namespace Volo.Abp.Settings { - public class SettingStore : AbpServiceBase, ISettingStore, ITransientDependency + public class SettingStore : ISettingStore, ITransientDependency { private readonly ISettingRepository _settingRepository; + private readonly IGuidGenerator _guidGenerator; - public SettingStore(ISettingRepository settingRepository) + public SettingStore(ISettingRepository settingRepository, IGuidGenerator guidGenerator) { _settingRepository = settingRepository; + _guidGenerator = guidGenerator; } public async Task GetOrNullAsync(string name, string providerName, string providerKey) @@ -25,7 +28,7 @@ namespace Volo.Abp.Settings var setting = await _settingRepository.FindAsync(name, providerName, providerKey); if (setting == null) { - setting = new Setting(GuidGenerator.Create(), name, value, providerName, providerKey); + setting = new Setting(_guidGenerator.Create(), name, value, providerName, providerKey); await _settingRepository.InsertAsync(setting); } else diff --git a/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/AutofacTestModule.cs b/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/AutofacTestModule.cs index 58adcd6116..90fa128495 100644 --- a/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/AutofacTestModule.cs +++ b/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/AutofacTestModule.cs @@ -1,9 +1,10 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Modularity; namespace Volo.Abp.AutoMapper { - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] [DependsOn(typeof(AbpAutoMapperModule))] [DependsOn(typeof(AbpCommonModule))] public class AutoMapperTestModule : AbpModule diff --git a/test/Volo.Abp.TestApp/Volo/Abp/TestApp/TestAppModule.cs b/test/Volo.Abp.TestApp/Volo/Abp/TestApp/TestAppModule.cs index 145d361737..662abc23c8 100644 --- a/test/Volo.Abp.TestApp/Volo/Abp/TestApp/TestAppModule.cs +++ b/test/Volo.Abp.TestApp/Volo/Abp/TestApp/TestAppModule.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; using Volo.Abp.Modularity; using Volo.Abp.TestApp.Domain; using Volo.Abp.AutoMapper; @@ -8,7 +9,7 @@ namespace Volo.Abp.TestApp { [DependsOn(typeof(AbpAutoMapperModule))] [DependsOn(typeof(AbpCommonModule))] - [DependsOn(typeof(AbpDddModule))] + [DependsOn(typeof(AbpDddApplicationModule))] public class TestAppModule : AbpModule { public override void ConfigureServices(IServiceCollection services)