Exemple #1
0
        private void ResolveArtifacts(string taskName, string title, Task.ResolveHandler finished)
        {
            m_CurrentTask?.Cancel();
            var resolveTask = new Task(taskName, title, finished, 1, this);

            m_CurrentTask = resolveTask;
            List <string> paths = null;

            resolveTask.RunThread(() =>
            {
                resolveTask.Report("Resolving GUIDs...");
                paths = index.GetDependencies();
            }, () =>
            {
                if (resolveTask?.Canceled() ?? false)
                {
                    return;
                }

                resolveTask.Report("Producing artifacts...");
                resolveTask.total = paths.Count;
                var artifacts     = ProduceArtifacts(paths);
                if (resolveTask?.Canceled() ?? false)
                {
                    return;
                }

                ResolveArtifacts(artifacts, null, resolveTask);
            });
        }
        private Task ResolveArtifacts(string taskName, string title, Task.ResolveHandler finished)
        {
            var           resolveTask = new Task(taskName, title, finished, 1, this);
            List <string> paths       = null;

            resolveTask.RunThread(() =>
            {
                resolveTask.Report("Scanning dependencies...");
                paths = index.GetDependencies();
            }, () => ProduceArtifacts(resolveTask, paths));

            return(resolveTask);
        }