public IEnumerable <IntegrationSagaItemEntity> Convert(IntegrationSagaExtended source, IEnumerable <IntegrationSagaItemEntity> destination, ResolutionContext context) { return(source.IntegrationItems.Select(sourceIntegrationItem => new IntegrationSagaItemEntity { Id = sourceIntegrationItem.Id, SagaId = source.Id })); }
public async Task SaveSagaAsync(IntegrationSagaExtended integrationSaga, CancellationToken cancellationToken) { var integrationSagaEntity = _mapper.Map <IntegrationSagaEntity>(integrationSaga); var integrationSagaItems = _mapper.Map <IEnumerable <IntegrationSagaItemEntity> >(integrationSaga); await SagaItemsCollection.InsertManyAsync(integrationSagaItems, _insertManyOptions, cancellationToken); await SagasCollection.InsertOneAsync(integrationSagaEntity, null, cancellationToken); await SetSagaStateAsync(integrationSagaEntity.Id, SagaStates.InProgress, cancellationToken); }
public UpdateServiceTests() { _integrationDal = new Mock <IIntegrationDal>(); var dateTimeService = new Mock <IDateTimeService>(); _integrationSagaFactory = new Mock <IIntegrationSagaFactory>(); _tvShowUpdateService = new Mock <ITvShowUpdateService>(); _cancellationToken = new CancellationToken(); var sagaId = new Guid("2aa0b175-7bcb-458a-9130-9b282af9f27b"); var dateTimeOfPreviousExecution = new DateTime(2018, 11, 6, 12, 01, 01); _integrationItem = new IntegrationItem(1); _integrationSaga = new IntegrationSagaExtended { Id = sagaId, StartDate = dateTimeOfPreviousExecution, IntegrationItems = new List <IntegrationItem>() { new IntegrationItem(1), new IntegrationItem(2), new IntegrationItem(3) } }; _updateService = new UpdateService( _integrationDal.Object, dateTimeService.Object, _integrationSagaFactory.Object, _tvShowUpdateService.Object ); }