Browse Source

CmsKit - Standardize EntityTypeDefinitionStores

pull/8026/head
enisn 5 years ago
parent
commit
c19356e10c
  1. 4
      modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/MediaDescriptors/MediaDescriptorAdminAppService.cs
  2. 6
      modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Tags/EntityTagAdminAppService.cs
  3. 4
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Comments/DefaultCommentEntityTypeDefinitionStore.cs
  4. 14
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Comments/ICommentEntityTypeDefinitionStore.cs
  5. 14
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/IEntityTypeDefinitionStore.cs
  6. 4
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/MediaDescriptors/DefaultMediaDescriptorDefinitionStore.cs
  7. 9
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/MediaDescriptors/IMediaDescriptorDefinitionStore.cs
  8. 2
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Reactions/DefaultReactionDefinitionStore.cs
  9. 6
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Reactions/IReactionDefinitionStore.cs
  10. 4
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Tags/DefaultTagDefinitionStore.cs
  11. 6
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Tags/ITagDefinitionStore.cs

4
modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/MediaDescriptors/MediaDescriptorAdminAppService.cs

@ -31,7 +31,7 @@ namespace Volo.CmsKit.Admin.MediaDescriptors
public virtual async Task<MediaDescriptorDto> CreateAsync(CreateMediaInputStream inputStream)
{
var definition = await MediaDescriptorDefinitionStore.GetDefinitionAsync(inputStream.EntityType);
var definition = await MediaDescriptorDefinitionStore.GetAsync(inputStream.EntityType);
/* TODO: Shouldn't CreatePolicies be a dictionary and we check for inputStream.EntityType? */
await CheckAnyOfPoliciesAsync(definition.CreatePolicies);
@ -51,7 +51,7 @@ namespace Volo.CmsKit.Admin.MediaDescriptors
{
var mediaDescriptor = await MediaDescriptorRepository.GetAsync(id);
var definition = await MediaDescriptorDefinitionStore.GetDefinitionAsync(mediaDescriptor.EntityType);
var definition = await MediaDescriptorDefinitionStore.GetAsync(mediaDescriptor.EntityType);
/* TODO: Shouldn't DeletePolicies be a dictionary and we check for inputStream.EntityType? */
await CheckAnyOfPoliciesAsync(definition.DeletePolicies);

6
modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Tags/EntityTagAdminAppService.cs

@ -29,7 +29,7 @@ namespace Volo.CmsKit.Admin.Tags
public virtual async Task AddTagToEntityAsync(EntityTagCreateDto input)
{
var definition = await TagDefinitionStore.GetTagEntityTypeDefinitionAsync(input.EntityType);
var definition = await TagDefinitionStore.GetAsync(input.EntityType);
await CheckAnyOfPoliciesAsync(definition.CreatePolicies);
@ -44,7 +44,7 @@ namespace Volo.CmsKit.Admin.Tags
public virtual async Task RemoveTagFromEntityAsync(EntityTagRemoveDto input)
{
var definition = await TagDefinitionStore.GetTagEntityTypeDefinitionAsync(input.EntityType);
var definition = await TagDefinitionStore.GetAsync(input.EntityType);
await CheckAnyOfPoliciesAsync(definition.DeletePolicies);
@ -57,7 +57,7 @@ namespace Volo.CmsKit.Admin.Tags
public virtual async Task SetEntityTagsAsync(EntityTagSetDto input)
{
var definition = await TagDefinitionStore.GetTagEntityTypeDefinitionAsync(input.EntityType);
var definition = await TagDefinitionStore.GetAsync(input.EntityType);
await CheckAnyOfPoliciesAsync(definition.UpdatePolicies);

4
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Comments/DefaultCommentEntityTypeDefinitionStore.cs

@ -10,7 +10,7 @@ using Volo.Abp.DependencyInjection;
namespace Volo.CmsKit.Comments
{
public class DefaultCommentEntityTypeDefinitionStore : ICommentEntityTypeDefinitionStore, ITransientDependency
public class DefaultCommentEntityTypeDefinitionStore : ICommentEntityTypeDefinitionStore
{
protected CmsKitCommentOptions Options { get; }
@ -19,7 +19,7 @@ namespace Volo.CmsKit.Comments
Options = options.Value;
}
public virtual Task<CommentEntityTypeDefinition> GetDefinitionAsync([NotNull] string entityType)
public virtual Task<CommentEntityTypeDefinition> GetAsync([NotNull] string entityType)
{
Check.NotNullOrWhiteSpace(entityType, nameof(entityType));

14
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Comments/ICommentEntityTypeDefinitionStore.cs

@ -1,17 +1,7 @@
using JetBrains.Annotations;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.CmsKit.Comments;
namespace Volo.CmsKit.Comments
namespace Volo.CmsKit.Comments
{
public interface ICommentEntityTypeDefinitionStore
public interface ICommentEntityTypeDefinitionStore : IEntityTypeDefinitionStore<CommentEntityTypeDefinition>
{
Task<CommentEntityTypeDefinition> GetDefinitionAsync([NotNull] string entityType);
Task<bool> IsDefinedAsync([NotNull] string entityType);
}
}

14
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/IEntityTypeDefinitionStore.cs

@ -0,0 +1,14 @@
using JetBrains.Annotations;
using System.Threading.Tasks;
using Volo.Abp.DependencyInjection;
namespace Volo.CmsKit
{
public interface IEntityTypeDefinitionStore<TPolicyDefinition> : ITransientDependency
where TPolicyDefinition : class
{
Task<TPolicyDefinition> GetAsync([NotNull] string entityType);
Task<bool> IsDefinedAsync([NotNull] string entityType);
}
}

4
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/MediaDescriptors/DefaultMediaDescriptorDefinitionStore.cs

@ -10,7 +10,7 @@ using Volo.Abp.DependencyInjection;
namespace Volo.CmsKit.MediaDescriptors
{
public class DefaultMediaDescriptorDefinitionStore : IMediaDescriptorDefinitionStore, ITransientDependency
public class DefaultMediaDescriptorDefinitionStore : IMediaDescriptorDefinitionStore
{
protected CmsKitMediaOptions Options { get; }
@ -25,7 +25,7 @@ namespace Volo.CmsKit.MediaDescriptors
/// <param name="entityType">EntityType to get definition.</param>
/// <exception cref="EntityCantHaveMediaException">Thrown when EntityType is not configured as taggable.</exception>
/// <exception cref="InvalidOperationException">More than one element satisfies the condition in predicate.</exception>
public virtual Task<MediaDescriptorDefinition> GetDefinitionAsync([NotNull] string entityType)
public virtual Task<MediaDescriptorDefinition> GetAsync([NotNull] string entityType)
{
Check.NotNullOrWhiteSpace(entityType, nameof(entityType));

9
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/MediaDescriptors/IMediaDescriptorDefinitionStore.cs

@ -1,12 +1,7 @@
using JetBrains.Annotations;
using System.Threading.Tasks;
namespace Volo.CmsKit.MediaDescriptors
namespace Volo.CmsKit.MediaDescriptors
{
public interface IMediaDescriptorDefinitionStore
public interface IMediaDescriptorDefinitionStore : IEntityTypeDefinitionStore<MediaDescriptorDefinition>
{
Task<bool> IsDefinedAsync([NotNull] string entityType);
Task<MediaDescriptorDefinition> GetDefinitionAsync([NotNull] string entityType);
}
}

2
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Reactions/DefaultReactionDefinitionStore.cs

@ -9,7 +9,7 @@ using Volo.Abp.DependencyInjection;
namespace Volo.CmsKit.Reactions
{
public class DefaultReactionDefinitionStore : IReactionDefinitionStore, ITransientDependency
public class DefaultReactionDefinitionStore : IReactionDefinitionStore
{
protected CmsKitReactionOptions Options { get; }

6
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Reactions/IReactionDefinitionStore.cs

@ -4,12 +4,8 @@ using JetBrains.Annotations;
namespace Volo.CmsKit.Reactions
{
public interface IReactionDefinitionStore
public interface IReactionDefinitionStore : IEntityTypeDefinitionStore<ReactionEntityTypeDefinition>
{
Task<bool> IsDefinedAsync([NotNull]string entityType);
Task<ReactionEntityTypeDefinition> GetAsync([NotNull] string entityType);
Task<List<ReactionDefinition>> GetReactionsAsync([NotNull] string entityType);
Task<ReactionDefinition> GetReactionOrNullAsync([NotNull] string reactionName, [NotNull] string entityType);

4
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Tags/DefaultTagDefinitionStore.cs

@ -9,7 +9,7 @@ using Volo.Abp.DependencyInjection;
namespace Volo.CmsKit.Tags
{
public class DefaultTagDefinitionStore : ITagDefinitionStore, ITransientDependency
public class DefaultTagDefinitionStore : ITagDefinitionStore
{
protected CmsKitTagOptions CmsKitTagOptions { get; }
@ -24,7 +24,7 @@ namespace Volo.CmsKit.Tags
/// <param name="entityType">EntityType to get definition.</param>
/// <exception cref="EntityNotTaggableException">Thrown when EntityType is not configured as taggable.</exception>
/// <exception cref="InvalidOperationException">More than one element satisfies the condition in predicate.</exception>
public virtual Task<TagEntityTypeDefiniton> GetTagEntityTypeDefinitionAsync([NotNull] string entityType)
public virtual Task<TagEntityTypeDefiniton> GetAsync([NotNull] string entityType)
{
Check.NotNullOrWhiteSpace(entityType, nameof(entityType));

6
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Tags/ITagDefinitionStore.cs

@ -4,12 +4,8 @@ using System.Threading.Tasks;
namespace Volo.CmsKit.Tags
{
public interface ITagDefinitionStore
public interface ITagDefinitionStore : IEntityTypeDefinitionStore<TagEntityTypeDefiniton>
{
Task<List<TagEntityTypeDefiniton>> GetTagEntityTypeDefinitionListAsync();
Task<TagEntityTypeDefiniton> GetTagEntityTypeDefinitionAsync([NotNull] string entityType);
Task<bool> IsDefinedAsync([NotNull] string entityType);
}
}

Loading…
Cancel
Save