コード例 #1
0
 static void MigrateServerMods(IEnumerable<string> folders, IAbsoluteDirectoryPath modPath, StatusRepo statusRepo) {
     foreach (var folder in folders) {
         foreach (var modFolder in Directory.EnumerateDirectories(folder)) {
             var status = new Status(Path.GetFileName(modFolder), statusRepo) {Action = RepoStatus.Processing};
             MigrateServerModFolder(modFolder.ToAbsoluteDirectoryPath(), modPath);
             status.Progress = 100;
         }
         Directory.Delete(folder, true);
     }
 }
コード例 #2
0
 public SynqInstallerSession(IInstallContentAction<IInstallableContent> action, IToolsInstaller toolsInstaller,
     bool isPremium, Func<double, double, Task> statusChange, IContentEngine contentEngine) {
     if (action == null)
         throw new ArgumentNullException(nameof(action));
     if (toolsInstaller == null)
         throw new ArgumentNullException(nameof(toolsInstaller));
     if (statusChange == null)
         throw new ArgumentNullException(nameof(statusChange));
     _action = action;
     _toolsInstaller = toolsInstaller;
     _isPremium = isPremium;
     _statusChange = statusChange;
     _contentEngine = contentEngine;
     _status = new Status(_action.Content.Count);
 }
コード例 #3
0
        async Task<List<Package>> GetDependencyTree(IEnumerable<Dependency> dependencies, bool noCheckout,
            bool useFullName) {
            var list = new List<string>();
            var list2 = new List<string>();
            var packages = new List<Package>();
            StatusRepo.Reset(RepoStatus.Resolving, dependencies.Count());

            foreach (var dep in dependencies) {
                var status = new Status(dep.GetFullName(), StatusRepo) {
                    Action = RepoStatus.Processing,
                    RealObject = "packages/" + dep + ".json"
                };
                await
                    ResolveDependencies(list, list2, packages, dep, useFullName, noCheckout)
                        .ConfigureAwait(false);
                status.EndOutput();
            }

            foreach (var package in packages)
                package.StatusRepo = StatusRepo;
            return packages;
        }
コード例 #4
0
 static void Status(string patchFile, StatusRepo repo, Action<IStatus> act,
     RepoStatus action = RepoStatus.Downloading) {
     var status = new Status(patchFile, repo) {Action = action};
     act(status);
     status.EndOutput();
 }