public static CognitiveFile ValidateForSubmission(CognitiveFileDTO file, IUserAccountRepository usersRepo) { //TODO: Add attribute values validation + user db validation var newId = Guid.NewGuid().ToString(); var result = new CognitiveFile { Id = newId, IsProcessed = false, CreatedAt = DateTime.UtcNow, FileName = $"{newId}{Path.GetExtension(file.FileName)}", IsDeleted = false, MediaType = FileMediaType.Image, Origin = file.Origin, OwnerId = file.OwnerId, Status = "Submitted" }; foreach (var step in file.CognitivePipelineActions) { result.CognitivePipelineActions.Add(new CognitiveStep { ServiceType = step.ServiceType, Status = "Processing", Confidence = 0, IsSuccessful = false, }); } //TODO: Add mapper configuration for successful automated mapping between the DTO and business objects //result.CognitivePipelineActions = Mapper.Map<List<CognitiveStep>>(file.CognitivePipelineActions); return(result); }
public static List <CognitiveFileDTO> GetData() { CognitiveFileDTO newFile1 = new CognitiveFileDTO { FileName = "mosaif_id.png", MediaType = Models.FileMediaType.Image, Origin = "UnitTests", OwnerId = "783ed915-8e5d-418b-ade0-8cc5f217ecf7" }; newFile1.CognitivePipelineActions = new List <CognitiveStepDTO> { new CognitiveStepDTO { ServiceType = Models.CognitiveServiceType.OCR }, new CognitiveStepDTO { ServiceType = Models.CognitiveServiceType.FaceDetection } }; CognitiveFileDTO newFile2 = new CognitiveFileDTO { FileName = "mohamed-saif.jpg", MediaType = Models.FileMediaType.Image, Origin = "UnitTests", OwnerId = "783ed915-8e5d-418b-ade0-8cc5f217ecf7" }; newFile2.CognitivePipelineActions = new List <CognitiveStepDTO> { new CognitiveStepDTO { ServiceType = Models.CognitiveServiceType.ImageAnalysis }, new CognitiveStepDTO { ServiceType = Models.CognitiveServiceType.OCR } }; return(new List <CognitiveFileDTO> { newFile1, newFile2 }); }