public async Task <AnalysisProfileDTO> Handle(SetMediaTypeCommand request, CancellationToken cancellationToken)
        {
            var analysisProfile = await _repository.GetAsync(request.AnalysisProfileId);

            var mediaType = await _repository.GetMediaTypeAsync(request.MediaTypeId);

            analysisProfile.SetMediaType(mediaType);
            _repository.Update(analysisProfile);

            await _repository.UnitOfWork.SaveChangesAsync();

            return(_mapper.Map <AnalysisProfileDTO>(analysisProfile));
        }
Example #2
0
        public async Task <AnalysisProfileDTO> Handle(SetScriptParametersFileCommand request, CancellationToken cancellationToken)
        {
            var analysisProfile = await _repository.GetAsync(request.AnalysisProfileId);

            var scriptParametersFile = await _repository.GetScriptParametersFileAsync(request.ScriptParametersFileId);

            analysisProfile.SetScriptParametersFile(scriptParametersFile);
            _repository.Update(analysisProfile);

            await _repository.UnitOfWork.SaveChangesAsync();

            return(_mapper.Map <AnalysisProfileDTO>(analysisProfile));
        }
        public async Task <AnalysisProfileDTO> Handle(UpdateAnalysisProfileCommand request, CancellationToken cancellationToken)
        {
            var analysisProfile = await _repository.GetAsync(request.Id);

            analysisProfile.SetName(request.Name);
            analysisProfile.SetDescription(request.Description);
            analysisProfile.SetPrice(request.Price);

            _repository.Update(analysisProfile);

            await _repository.UnitOfWork.SaveChangesAsync();

            var analysisProfileDTO = _mapper.Map <AnalysisProfileDTO>(analysisProfile);
            var integrationEvent   = new AnalysisProfileUpdatedEvent(analysisProfileDTO);
            await _integrationEventService.AddAndSaveEventAsync(integrationEvent);

            return(analysisProfileDTO);
        }