From 3abd7483d990fe78d4f2314cae7799bce56f15cc Mon Sep 17 00:00:00 2001 From: enisn Date: Tue, 19 Jan 2021 18:09:06 +0300 Subject: [PATCH] CmsKit - Blogs domain improvements --- .../Volo/CmsKit/Blogs/Blog.cs | 19 +++++++++++++++++-- .../Volo/CmsKit/Blogs/BlogPostManager.cs | 3 ++- .../Volo/CmsKit/Blogs/IBlogRepository.cs | 9 +++++++++ .../Volo/CmsKit/Contents/ContentManager.cs | 2 +- .../Volo/CmsKit/Contents/IContentManager.cs | 2 +- .../Volo/CmsKit/Blogs/BlogEfCoreRepository.cs | 14 ++++++++++++++ .../MongoDB/Blogs/BlogMongoRepository.cs | 14 ++++++++++++++ 7 files changed, 58 insertions(+), 5 deletions(-) create mode 100644 modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/IBlogRepository.cs create mode 100644 modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Blogs/BlogEfCoreRepository.cs create mode 100644 modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/BlogMongoRepository.cs diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/Blog.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/Blog.cs index 59354c8e59..9ae19ff512 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/Blog.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/Blog.cs @@ -1,4 +1,6 @@ -using System; +using JetBrains.Annotations; +using System; +using Volo.Abp; using Volo.Abp.Domain.Entities.Auditing; using Volo.Abp.MultiTenancy; @@ -6,8 +8,21 @@ namespace Volo.CmsKit.Blogs { public class Blog : FullAuditedAggregateRoot, IMultiTenant { - public string Name { get; set; } + public Blog( + [NotNull] string name, + [CanBeNull] Guid? tenantId = null) + { + SetName(name); + TenantId = tenantId; + } + + public string Name { get; protected set; } public Guid? TenantId { get; } + + public void SetName(string name) + { + Name = Check.NotNullOrWhiteSpace(name, nameof(name), maxLength: BlogConsts.MaxNameLength); + } } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogPostManager.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogPostManager.cs index 06518cd29d..2b139fbdb6 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogPostManager.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogPostManager.cs @@ -3,10 +3,11 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using Volo.Abp.Domain.Services; namespace Volo.CmsKit.Blogs { - public class BlogPostManager : IBlogPostManager + public class BlogPostManager : DomainService, IBlogPostManager { protected readonly IBlogPostRepository _blogPostRepository; diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/IBlogRepository.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/IBlogRepository.cs new file mode 100644 index 0000000000..8ded8b2933 --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/IBlogRepository.cs @@ -0,0 +1,9 @@ +using System; +using Volo.Abp.Domain.Repositories; + +namespace Volo.CmsKit.Blogs +{ + public interface IBlogRepository : IRepository + { + } +} diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Contents/ContentManager.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Contents/ContentManager.cs index 6eb2521ba2..047d923ad6 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Contents/ContentManager.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Contents/ContentManager.cs @@ -7,7 +7,7 @@ using System.Threading.Tasks; using Volo.Abp.Domain.Services; using Volo.CmsKit.Contents; -namespace Volo.CmsKit.Domain.Volo.CmsKit.Contents +namespace Volo.CmsKit.Contents { public class ContentManager : DomainService, IContentManager { diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Contents/IContentManager.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Contents/IContentManager.cs index e795e7895c..d64bd0effe 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Contents/IContentManager.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Contents/IContentManager.cs @@ -2,7 +2,7 @@ using System.Threading.Tasks; using Volo.CmsKit.Contents; -namespace Volo.CmsKit.Domain.Volo.CmsKit.Contents +namespace Volo.CmsKit.Contents { public interface IContentManager { diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Blogs/BlogEfCoreRepository.cs b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Blogs/BlogEfCoreRepository.cs new file mode 100644 index 0000000000..db6d5258ca --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Blogs/BlogEfCoreRepository.cs @@ -0,0 +1,14 @@ +using System; +using Volo.Abp.Domain.Repositories.EntityFrameworkCore; +using Volo.Abp.EntityFrameworkCore; +using Volo.CmsKit.EntityFrameworkCore; + +namespace Volo.CmsKit.Blogs +{ + public class BlogEfCoreRepository : EfCoreRepository, IBlogRepository + { + public BlogEfCoreRepository(IDbContextProvider dbContextProvider) : base(dbContextProvider) + { + } + } +} diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/BlogMongoRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/BlogMongoRepository.cs new file mode 100644 index 0000000000..50e900f989 --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/BlogMongoRepository.cs @@ -0,0 +1,14 @@ +using System; +using Volo.Abp.Domain.Repositories.MongoDB; +using Volo.Abp.MongoDB; +using Volo.CmsKit.Blogs; + +namespace Volo.CmsKit.MongoDB.Blogs +{ + public class BlogMongoRepository : MongoDbRepository, IBlogRepository + { + public BlogMongoRepository(IMongoDbContextProvider dbContextProvider) : base(dbContextProvider) + { + } + } +}