public override async Task <CaptureResult> Capture() { var result = new CaptureResult(); try { if (fileManager.Exists(root)) { var files = new List <FileValue>(); foreach (var path in expandedFilenames) { if (fileManager.Exists(path)) { var file = new FileValue(); file.RelativePath = Path.GetRelativePath(root, path); file.Contents = await fileManager.ReadAllBytes(path); files.Add(file); } } FilesValue value = new FilesValue(); value.Files = files.ToArray(); result.Value = value.ToDictionary(); result.Success = true; } } catch (Exception e) { logger.LogError(e, "Failed to capture files"); } return(result); }