public async Task Process(IAssetProcessingService <ImageProcessingStates> service, OVEAssetModel asset) { // 2) download it string url = await service.GetAssetUri(asset); string localUri = service.DownloadAsset(url, asset); // 3) Create DZI file await service.UpdateStatus(asset, (int)ImageProcessingStates.CreatingDZI); var res = ProcessFile(localUri); _logger.LogInformation("Processed file " + res); // 4) Upload it await service.UpdateStatus(asset, (int)ImageProcessingStates.Uploading); await _fileOps.UploadIndexFileAndDirectory(Path.ChangeExtension(localUri, ".dzi"), Path.ChangeExtension(localUri, ".dzi").Replace(".dzi", "_files/"), asset); // 5) delete local files _logger.LogInformation("about to delete files"); Directory.Delete(Path.GetDirectoryName(localUri), true); // 6) Mark it as completed await service.UpdateStatus(asset, (int)ImageProcessingStates.Processed); }
public async Task Process(IAssetProcessingService <ArchiveProcessingStates> service, OVEAssetModel asset) { // 2) download it string url = await service.GetAssetUri(asset); string localUri = service.DownloadAsset(url, asset); // 3) unzip and Upload await service.UpdateStatus(asset, (int)ArchiveProcessingStates.Uploading); List <string> files; using (var s = File.OpenRead(localUri)) { files = await UnZipAsset(asset, s); } // 4) set the meta data properly asset.AssetMeta = JsonConvert.SerializeObject(files); await UpdateAssetMeta(asset); // 5) delete local files _logger.LogInformation("about to delete files"); Directory.Delete(Path.GetDirectoryName(localUri), true); // 6) Mark it as completed await service.UpdateStatus(asset, (int)ArchiveProcessingStates.Processed); }