Ejemplo n.º 1
0
    public static InstallationDefinition GetInstallationDefinition(string visualStudioVersion, bool isVisualStudioInstalled, bool isChocolateyPackageInstalled, string packageName)
    {
        string iconToUse;

        switch (visualStudioVersion)
        {
        case VisualStudioVersions.VS2013:
            iconToUse = "/Images/SM2013.png";
            break;

        case VisualStudioVersions.VS2012:
            iconToUse = "/Images/SM2012.png";
            break;

        default:
            throw new Exception(string.Format("Specified VisualStudio version: {0} is not supported", visualStudioVersion));
        }

        var installationDefinition = new InstallationDefinition
        {
            SortOrder          = 20,
            Name               = "ServiceMatrix",
            Image              = iconToUse,
            Disabled           = true,
            PackageDefinitions = new List <PackageDefinition>(),
            SelectedByDefault  = false
        };

        if (!isVisualStudioInstalled)
        {
            installationDefinition.Status  = string.Format("{0} Required", visualStudioVersion);
            installationDefinition.ToolTip = string.Format("This option requires {0}", visualStudioVersion);
            return(installationDefinition);
        }

        if (!isChocolateyPackageInstalled)
        {
            installationDefinition.PackageDefinitions.Add(new PackageDefinition
            {
                Name        = packageName,
                DisplayName = "ServiceMatrix for " + visualStudioVersion
            });
            installationDefinition.Status            = "Install";
            installationDefinition.SelectedByDefault = true;
            installationDefinition.Disabled          = false;
            installationDefinition.ToolTip           = string.Format("Install ServiceMatrix for {0}", visualStudioVersion);
        }
        else
        {
            installationDefinition.Status  = "Already Installed";
            installationDefinition.ToolTip = string.Format("ServiceMatrix for {0} is already installed", visualStudioVersion);
        }
        return(installationDefinition);
    }
Ejemplo n.º 2
0
    public static InstallationDefinition InstallationDefinition(PackageManager packageManager)
    {
        var versionsToInstall = VisualStudioDetecter.InstalledVersions.Where(version => supportedVersions.Contains(version));

        var installationDefinition = new InstallationDefinition
        {
            SortOrder = 20,
            Name = "ServiceMatrix",
            Image = "/Images/SM.png",
            Disabled = true,
            ToolTip = "ServiceMatrix requires Visual Studio 2012 to be installed,",
            PackageDefinitions = new List<PackageDefinition>(),
            SelectedByDefault = false
        };

        foreach (var version in versionsToInstall)
        {
            var packageName = "ServiceMatrix." + version + ".install";

            if (packageManager.IsInstalled(packageName))
            {
                continue;
            }

            installationDefinition.PackageDefinitions.Add(new PackageDefinition
                 {
                     Name =packageName,
                     DisplayName = "ServiceMatrix for " + version
                 });
        }

        if (installationDefinition.PackageDefinitions.Any())
        {
            installationDefinition.Status = "Install";
            installationDefinition.SelectedByDefault = true;
            installationDefinition.Disabled = false;
            installationDefinition.ToolTip = "Install ServiceMatrix";
        }
        else
        {
            if (versionsToInstall.Any())
            {
                installationDefinition.Status = "Already installed";
                installationDefinition.ToolTip = "ServiceMatrix for Visual Studio 2012";
            }
            else
            {
                installationDefinition.Status = "VS 2012 required";
                installationDefinition.ToolTip = "ServiceMatrix requires Visual Studio 2012";
            }
        }

        return installationDefinition;
    }
Ejemplo n.º 3
0
    public static InstallationDefinition GetInstallationDefinition(string visualStudioVersion, bool isVisualStudioInstalled, bool isChocolateyPackageInstalled, string packageName)
    {
        string iconToUse;
        switch (visualStudioVersion)
        {
            case VisualStudioVersions.VS2013:
                iconToUse = "/Images/SM2013.png";
                break;
            case VisualStudioVersions.VS2012:
                iconToUse = "/Images/SM2012.png";
                break;
            default:
                throw new Exception(string.Format("Specified VisualStudio version: {0} is not supported", visualStudioVersion));
        }

        var installationDefinition = new InstallationDefinition
        {
            SortOrder = 20,
            Name = "ServiceMatrix",
            Image = iconToUse,
            Disabled = true,
            PackageDefinitions = new List<PackageDefinition>(),
            SelectedByDefault = false
        };

        if (!isVisualStudioInstalled)
        {
            installationDefinition.Status = string.Format("{0} Required", visualStudioVersion);
            installationDefinition.ToolTip = string.Format("This option requires {0}", visualStudioVersion);
            return installationDefinition;
        }

        if (!isChocolateyPackageInstalled)
        {
            installationDefinition.PackageDefinitions.Add(new PackageDefinition
            {
                Name = packageName,
                DisplayName = "ServiceMatrix for " + visualStudioVersion
            });
            installationDefinition.Status = "Install";
            installationDefinition.SelectedByDefault = true;
            installationDefinition.Disabled = false;
            installationDefinition.ToolTip = string.Format("Install ServiceMatrix for {0}", visualStudioVersion);
        }
        else
        {
            installationDefinition.Status = "Already Installed";
            installationDefinition.ToolTip = string.Format("ServiceMatrix for {0} is already installed", visualStudioVersion);
        }
        return installationDefinition;
    }