• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

loresoft / MediatR.CommandQuery / 11937278774

20 Nov 2024 04:10PM CUT coverage: 59.17% (-0.1%) from 59.302%
11937278774

push

github

pwelter34
make HybridCache optional

389 of 745 branches covered (52.21%)

Branch coverage included in aggregate %.

0 of 6 new or added lines in 2 files covered. (0.0%)

1 existing line in 1 file now uncovered.

1208 of 1954 relevant lines covered (61.82%)

19.52 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/MediatR.CommandQuery.Cosmos/Handlers/EntityCreateCommandHandler.cs
1
using AutoMapper;
2

3
using Cosmos.Abstracts;
4

5
using MediatR.CommandQuery.Commands;
6
using MediatR.CommandQuery.Definitions;
7

8
using Microsoft.Extensions.Logging;
9

10
namespace MediatR.CommandQuery.Cosmos.Handlers;
11

12
public class EntityCreateCommandHandler<TRepository, TEntity, TCreateModel, TReadModel>
13
    : RepositoryHandlerBase<TRepository, TEntity, EntityCreateCommand<TCreateModel, TReadModel>, TReadModel>
14
    where TRepository : ICosmosRepository<TEntity>
15
    where TEntity : class, IHaveIdentifier<string>, new()
16
{
17
    public EntityCreateCommandHandler(ILoggerFactory loggerFactory, TRepository repository, IMapper mapper)
18
        : base(loggerFactory, repository, mapper)
×
19
    {
20
    }
×
21

22
    protected override async Task<TReadModel> Process(EntityCreateCommand<TCreateModel, TReadModel> request, CancellationToken cancellationToken)
23
    {
24
        ArgumentNullException.ThrowIfNull(request);
×
25

26
        // create new entity from model
27
        var entity = Mapper.Map<TEntity>(request.Model);
×
28

29
        // apply create metadata
30
        if (entity is ITrackCreated createdModel)
×
31
        {
32
            createdModel.Created = request.Activated;
×
33
            createdModel.CreatedBy = request.ActivatedBy;
×
34
        }
35

36
        // apply update metadata
37
        if (entity is ITrackUpdated updateEntity)
×
38
        {
39
            updateEntity.Updated = request.Activated;
×
40
            updateEntity.UpdatedBy = request.ActivatedBy;
×
41
        }
42

43
        var result = await Repository
×
44
            .CreateAsync(entity, cancellationToken)
×
45
            .ConfigureAwait(false);
×
46

47
        // convert to read model
48
        return Mapper.Map<TReadModel>(result);
×
49
    }
×
50
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc