Beispiel #1
0
        public static async Task <int> ExecuteAsync(
            TemplateOptions options,
            IConsole console,
            IAppEnvironment appEnvironment,
            InvocationContext context = null)
        {
            console.Out.WriteLine($"Uninstalling template package '{options.PackageId}'");

            var templateSettingsManager       = new TemplateSettingsManager(appEnvironment);
            TemplatesSettings currentSettings = templateSettingsManager.LoadSettings() ?? new TemplatesSettings();

            var packageManager = new NuGetTemplatePackageManager(appEnvironment);

            if (currentSettings.Packages.Exists(templatePackage => templatePackage.PackageId == options.PackageId))
            {
                TemplatePackage package = currentSettings.Packages.Find(templatePackage => templatePackage.Id == options.PackageId);

                if (package != null)
                {
                    await packageManager.UnnstallAsync(package).ConfigureAwait(false);

                    currentSettings.Packages.Remove(package);

                    if (currentSettings.DefaultTemplate.PackageName == package.PackageId)
                    {
                        currentSettings.DefaultTemplate = new DefaultTemplate();
                    }
                }
            }

            return(ReturnCodes.Ok);
        }
Beispiel #2
0
        public static async Task <int> ExecuteAsync(
            TemplateOptions options,
            IConsole console,
            IAppEnvironment appEnvironment,
            InvocationContext context = null)
        {
            console.Out.WriteLine($"Installing template from package '{options.PackageId}'");

            var templateSettingsManager       = new TemplateSettingsManager(appEnvironment);
            TemplatesSettings currentSettings = templateSettingsManager.LoadSettings() ?? new TemplatesSettings();

            var packageManager = new NuGetTemplatePackageManager(appEnvironment);

            if (currentSettings.Packages.Exists(x => x.PackageId == options.PackageId))
            {
                TemplatePackage package = currentSettings.Packages.Find(x => x.Id == options.PackageId);

                if (package != null)
                {
                    await packageManager.UnnstallAsync(package).ConfigureAwait(false);

                    currentSettings.Packages.Remove(package);

                    if (currentSettings.DefaultTemplate.PackageName == package.PackageId)
                    {
                        currentSettings.DefaultTemplate = new DefaultTemplate();
                    }
                }
            }

            TemplatePackage templatePackage =
                await packageManager.InstallLatestAsync(options.PackageId).ConfigureAwait(false);

            if (!currentSettings.Packages.Exists(x => x.Id == templatePackage.Id))
            {
                currentSettings.Packages.Add(templatePackage);
            }

            currentSettings.DefaultTemplate ??= new DefaultTemplate
            {
                ContentType = templatePackage.Templates.First().ContentType,
                PackageName = templatePackage.PackageId,
                PackagePath = templatePackage.InstalltionPath,
            };

            templateSettingsManager.SaveSettings(currentSettings);

            return(ReturnCodes.Ok);
        }
Beispiel #3
0
 private void PopulateTemplates()
 {
     templates = TemplatesSettings.Load();
     toolStripComboBox1.ComboBox.DataSource    = templates.Templates;
     toolStripComboBox1.ComboBox.DisplayMember = "Name";
 }