public async Task <decimal> GetDurationOfImageComputation(ImageTypeViewModelM imageViewModel) { var image = _imageFactoryCreation.FactoryCreate(imageViewModel); var computationType = _computationService.GetComputationType(image.Length, image.Width); var computer = _computerDefinitionService.GetComputerDefinition(); computer.ComputationType = computationType; await _imageRepository.Add(new Image(image.Length, image.Width)); return(_imageCalculationService.CalculateImage(computationType)); }
public IImageM FactoryCreate(ImageTypeViewModelM imageViewModel) { if (imageViewModel.ImageType.Equals("high")) { return(new HighDefinitionFactory().CreateImage()); } else if (imageViewModel.ImageType.Equals("low")) { return(new LowDefinitionFactory().CreateImage()); } else { throw new ArgumentException("Wrong argument!!!"); } }
public async Task <IHttpActionResult> GetImageProcessDurationPost([FromBody] ImageTypeViewModelM imageViewModel) => Ok(await _imageFacadeService.GetDurationOfImageComputation(imageViewModel));