2026-06-24 11:51:15 +01:00

20 lines
645 B
C#

using Solicitors.Core.Data;
using Solicitors.Core.Models.Imports;
namespace Solicitors.CacheBuild;
internal class SolicitorImporter(
ISolicitorParser parser,
ISolicitorRepository repository) : ISolicitorImporter
{
public async Task RunFullImport(CancellationToken cancellationToken)
{
foreach (var solicitor in await parser.GetSolicitorsAsync(cancellationToken))
{
await RunImport(solicitor, cancellationToken);
}
}
private Task RunImport(SolicitorData solicitor, CancellationToken cancellationToken)
=> repository.AddOrUpdateSolicitorAsync(solicitor, cancellationToken);
}