Exemplo n.º 1
0
        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);
        }