/// <summary> /// 1- Submit picture to image Repository /// 2- Push new imqge metadata to Queue /// 3- Return image /// </summary> /// <param name="picture"></param> /// <returns></returns> public async Task <HRSubmitPictureListItemDto> AddPictureDataAsync(HRSubmitPictureInputDto picture) { if (picture != null) { //1- using var thumbnailTask = _imgCDNService.GetImageDataProcessingUrlAsync(); await thumbnailTask; if (thumbnailTask.IsCompletedSuccessfully) { picture.ThumbnailUrl = thumbnailTask.Result; var transcoPic = _mapper.Map <HRSubmitPictureInput>(picture); using var taskPicture = _birdsSubmissionrepo.AddPictureAsync(transcoPic); await taskPicture; if (taskPicture.IsCompletedSuccessfully) { var retour = _mapper.Map <HRSubmitPictureListItemDto>(taskPicture.Result); //2- using var queuetask = _queueService.OnNewMetadataImageAsync(retour); await queuetask; //3- return(retour); } else { throw new Exception("_birdsPictureConverter.AddPictureAsync fail."); } } else { throw new Exception("_imgCDNService.GetImageDataProcessingUrlAsync fail."); } } return(null); }
public async Task <string> Get(string id) { HRSubmitPictureInputDto item = new HRSubmitPictureInputDto() { AgeType = Guid.NewGuid(), Comment = "un commentaire bateau", Credit = "un credit bateau é ", //Credit = "un crédit bateâu", FullImageUrl = "http://monimage.jpeg", GenderType = Guid.NewGuid(), Id = Guid.NewGuid(), SourceType = Guid.NewGuid(), ThumbnailUrl = String.Empty, VernacularName = "turdus merula", }; using var queuetask = _queueService.OnNewMetadataImageAsync(null); await queuetask; return("yes"); }