Browse Source

Merge pull request #23646 from abpframework/background-jobs-mapperly

Replace AutoMapper with Mapperly for BackgroundJobs Module
pull/23649/head
Enis Necipoglu 9 months ago
committed by GitHub
parent
commit
4e110734a6
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 2
      modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.csproj
  2. 11
      modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/AbpBackgroundJobsDomainModule.cs
  3. 17
      modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobsDomainAutoMapperProfile.cs
  4. 36
      modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobsDomainMapperlyMappers.cs

2
modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.csproj

@ -10,7 +10,7 @@
<ItemGroup>
<ProjectReference Include="..\Volo.Abp.BackgroundJobs.Domain.Shared\Volo.Abp.BackgroundJobs.Domain.Shared.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.Mapperly\Volo.Abp.Mapperly.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.Ddd.Domain\Volo.Abp.Ddd.Domain.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.BackgroundJobs\Volo.Abp.BackgroundJobs.csproj" />
</ItemGroup>

11
modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/AbpBackgroundJobsDomainModule.cs

@ -1,5 +1,5 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.AutoMapper;
using Volo.Abp.Mapperly;
using Volo.Abp.Modularity;
namespace Volo.Abp.BackgroundJobs;
@ -7,16 +7,13 @@ namespace Volo.Abp.BackgroundJobs;
[DependsOn(
typeof(AbpBackgroundJobsDomainSharedModule),
typeof(AbpBackgroundJobsModule),
typeof(AbpAutoMapperModule)
typeof(AbpMapperlyModule)
)]
public class AbpBackgroundJobsDomainModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
context.Services.AddAutoMapperObjectMapper<AbpBackgroundJobsDomainModule>();
Configure<AbpAutoMapperOptions>(options =>
{
options.AddProfile<BackgroundJobsDomainAutoMapperProfile>(validate: true);
});
context.Services.AddMapperlyObjectMapper<AbpBackgroundJobsDomainModule>();
}
}

17
modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobsDomainAutoMapperProfile.cs

@ -1,17 +0,0 @@
using AutoMapper;
using Volo.Abp.AutoMapper;
namespace Volo.Abp.BackgroundJobs;
public class BackgroundJobsDomainAutoMapperProfile : Profile
{
public BackgroundJobsDomainAutoMapperProfile()
{
CreateMap<BackgroundJobInfo, BackgroundJobRecord>()
.ConstructUsing(x => new BackgroundJobRecord(x.Id))
.Ignore(record => record.ConcurrencyStamp)
.Ignore(record => record.ExtraProperties);
CreateMap<BackgroundJobRecord, BackgroundJobInfo>();
}
}

36
modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobsDomainMapperlyMappers.cs

@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Riok.Mapperly.Abstractions;
using Volo.Abp.Mapperly;
namespace Volo.Abp.BackgroundJobs;
[Mapper(RequiredMappingStrategy = RequiredMappingStrategy.Target)]
public partial class BackgroundJobInfoToBackgroundJobRecordMapper
: MapperBase<BackgroundJobInfo, BackgroundJobRecord>
{
[MapperIgnoreTarget(nameof(BackgroundJobRecord.ConcurrencyStamp))]
[MapperIgnoreTarget(nameof(BackgroundJobRecord.ExtraProperties))]
public override partial BackgroundJobRecord Map(BackgroundJobInfo source);
[MapperIgnoreTarget(nameof(BackgroundJobRecord.ConcurrencyStamp))]
[MapperIgnoreTarget(nameof(BackgroundJobRecord.ExtraProperties))]
public override partial void Map(BackgroundJobInfo source, BackgroundJobRecord destination);
[ObjectFactory]
protected BackgroundJobRecord CreateBackgroundJobRecord(BackgroundJobInfo source)
{
return new BackgroundJobRecord(source.Id);
}
}
[Mapper(RequiredMappingStrategy = RequiredMappingStrategy.Target)]
public partial class BackgroundJobRecordToBackgroundJobInfoMapper
: MapperBase<BackgroundJobRecord, BackgroundJobInfo>
{
public override partial BackgroundJobInfo Map(BackgroundJobRecord source);
public override partial void Map(BackgroundJobRecord source, BackgroundJobInfo destination);
}
Loading…
Cancel
Save