Microsoft.Web.PlatformInstaller.WebDeployShim.dll reference removed;
DeploymentParameters interchange updated
This commit is contained in:
parent
3bea46c499
commit
4308f11407
6 changed files with 55 additions and 26 deletions
Binary file not shown.
|
@ -87,7 +87,7 @@ namespace WebsitePanel.Providers.WebAppGallery
|
||||||
//SiteUserPassword = 549755813888,
|
//SiteUserPassword = 549755813888,
|
||||||
|
|
||||||
|
|
||||||
ALLKNOWN =
|
AllKnown =
|
||||||
AppHostConfig |
|
AppHostConfig |
|
||||||
AppPoolConfig |
|
AppPoolConfig |
|
||||||
Boolean |
|
Boolean |
|
||||||
|
@ -155,5 +155,21 @@ namespace WebsitePanel.Providers.WebAppGallery
|
||||||
return String.Format("{0}=\"{1}\", Tags={2}", Name, Value, WellKnownTags.ToString());
|
return String.Format("{0}=\"{1}\", Tags={2}", Name, Value, WellKnownTags.ToString());
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
public void SetWellKnownTagsFromRawString(string rawTags)
|
||||||
|
{
|
||||||
|
string[] tags = rawTags.Split(new[] {','}, StringSplitOptions.RemoveEmptyEntries);
|
||||||
|
DeploymentParameterWellKnownTag wellKnownTags = DeploymentParameterWellKnownTag.None;
|
||||||
|
foreach (string tag in tags)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
wellKnownTags |= (DeploymentParameterWellKnownTag)Enum.Parse(typeof(DeploymentParameterWellKnownTag), tag, true);
|
||||||
|
}
|
||||||
|
catch(Exception){}
|
||||||
|
}
|
||||||
|
|
||||||
|
WellKnownTags = wellKnownTags & DeploymentParameterWellKnownTag.AllKnown;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,6 +44,7 @@ using System.Web;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using Microsoft.Practices.EnterpriseLibrary.Caching.Expirations;
|
using Microsoft.Practices.EnterpriseLibrary.Caching.Expirations;
|
||||||
using DeploymentParameter = WebsitePanel.Providers.WebAppGallery.DeploymentParameter;
|
using DeploymentParameter = WebsitePanel.Providers.WebAppGallery.DeploymentParameter;
|
||||||
|
using DeploymentParameterWPI = Microsoft.Web.PlatformInstaller.DeploymentParameter;
|
||||||
|
|
||||||
namespace WebsitePanel.Providers.Web.WPIWebApplicationGallery
|
namespace WebsitePanel.Providers.Web.WPIWebApplicationGallery
|
||||||
{
|
{
|
||||||
|
@ -268,10 +269,10 @@ namespace WebsitePanel.Providers.Web.WPIWebApplicationGallery
|
||||||
|
|
||||||
Product product = wpi.GetProduct(id);
|
Product product = wpi.GetProduct(id);
|
||||||
List<DeploymentParameter> deploymentParameters = new List<DeploymentParameter>();
|
List<DeploymentParameter> deploymentParameters = new List<DeploymentParameter>();
|
||||||
IList<DeclaredParameter> appDecalredParameters = wpi.GetAppDecalredParameters(id);
|
IList<DeploymentParameterWPI> appDeploymentWPIParameters = wpi.GetAppDecalredParameters(id);
|
||||||
foreach (DeclaredParameter declaredParameter in appDecalredParameters)
|
foreach (DeploymentParameterWPI deploymentParameter in appDeploymentWPIParameters)
|
||||||
{
|
{
|
||||||
deploymentParameters.Add(MakeDeploymentParameterFromDecalredParameter(declaredParameter));
|
deploymentParameters.Add(MakeDeploymentParameterFromDecalredParameter(deploymentParameter));
|
||||||
}
|
}
|
||||||
|
|
||||||
return deploymentParameters;
|
return deploymentParameters;
|
||||||
|
@ -398,28 +399,41 @@ namespace WebsitePanel.Providers.Web.WPIWebApplicationGallery
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
protected static DeploymentParameter MakeDeploymentParameterFromDecalredParameter(DeclaredParameter d)
|
protected static DeploymentParameter MakeDeploymentParameterFromDecalredParameter(DeploymentParameterWPI d)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
DeploymentParameter r = new DeploymentParameter();
|
DeploymentParameter r = new DeploymentParameter();
|
||||||
r.Name = d.Name;
|
r.Name = d.Name;
|
||||||
r.FriendlyName = d.FriendlyName;
|
r.FriendlyName = d.FriendlyName;
|
||||||
r.DefaultValue = d.DefaultValue;
|
r.DefaultValue = d.DefaultValue;
|
||||||
r.Description = d.Description;
|
r.Description = d.Description;
|
||||||
|
|
||||||
#pragma warning disable 612,618
|
r.SetWellKnownTagsFromRawString(d.RawTags);
|
||||||
r.WellKnownTags = DeploymentParameterWellKnownTag.ALLKNOWN & (DeploymentParameterWellKnownTag) d.Tags;
|
if (!string.IsNullOrEmpty(d.ValidationString))
|
||||||
if (null != d.Validation)
|
|
||||||
{
|
{
|
||||||
r.ValidationKind = (DeploymentParameterValidationKind) d.Validation.Kind;
|
// synchronized with Microsoft.Web.Deployment.DeploymentSyncParameterValidationKind
|
||||||
r.ValidationString = d.Validation.ValidationString;
|
if (d.HasValidation((int)DeploymentParameterValidationKind.AllowEmpty))
|
||||||
|
{
|
||||||
|
r.ValidationKind |= DeploymentParameterValidationKind.AllowEmpty;
|
||||||
|
}
|
||||||
|
if (d.HasValidation((int)DeploymentParameterValidationKind.RegularExpression))
|
||||||
|
{
|
||||||
|
r.ValidationKind |= DeploymentParameterValidationKind.RegularExpression;
|
||||||
|
}
|
||||||
|
if (d.HasValidation((int)DeploymentParameterValidationKind.Enumeration))
|
||||||
|
{
|
||||||
|
r.ValidationKind |= DeploymentParameterValidationKind.Enumeration;
|
||||||
|
}
|
||||||
|
if (d.HasValidation((int)DeploymentParameterValidationKind.Boolean))
|
||||||
|
{
|
||||||
|
r.ValidationKind |= DeploymentParameterValidationKind.Boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
r.ValidationString = d.ValidationString;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
r.ValidationKind = DeploymentParameterValidationKind.None;
|
r.ValidationKind = DeploymentParameterValidationKind.None;
|
||||||
}
|
}
|
||||||
#pragma warning restore 612,618
|
|
||||||
|
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
|
@ -77,11 +77,6 @@
|
||||||
<HintPath>..\..\Lib\References\Microsoft\Microsoft.Web.PlatformInstaller.dll</HintPath>
|
<HintPath>..\..\Lib\References\Microsoft\Microsoft.Web.PlatformInstaller.dll</HintPath>
|
||||||
<Private>True</Private>
|
<Private>True</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Web.PlatformInstaller.WebDeployShim, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
|
||||||
<SpecificVersion>False</SpecificVersion>
|
|
||||||
<HintPath>..\..\Lib\References\Microsoft\Microsoft.Web.PlatformInstaller.WebDeployShim.dll</HintPath>
|
|
||||||
<Private>True</Private>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
<Reference Include="System.DirectoryServices" />
|
<Reference Include="System.DirectoryServices" />
|
||||||
|
|
|
@ -38,6 +38,7 @@ using System.Threading;
|
||||||
using Microsoft.Web.Deployment;
|
using Microsoft.Web.Deployment;
|
||||||
using Microsoft.Web.PlatformInstaller;
|
using Microsoft.Web.PlatformInstaller;
|
||||||
using Installer = Microsoft.Web.PlatformInstaller.Installer;
|
using Installer = Microsoft.Web.PlatformInstaller.Installer;
|
||||||
|
using DeploymentParameterWPI = Microsoft.Web.PlatformInstaller.DeploymentParameter;
|
||||||
|
|
||||||
namespace WebsitePanel.Server.Code
|
namespace WebsitePanel.Server.Code
|
||||||
{
|
{
|
||||||
|
@ -453,11 +454,11 @@ namespace WebsitePanel.Server.Code
|
||||||
return products;
|
return products;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IList<DeclaredParameter> GetAppDecalredParameters(string productId)
|
public IList<DeploymentParameterWPI> GetAppDecalredParameters(string productId)
|
||||||
{
|
{
|
||||||
Product app = _productManager.GetProduct(productId);
|
Product app = _productManager.GetProduct(productId);
|
||||||
Installer appInstaller = app.GetInstaller(GetLanguage(null));
|
Installer appInstaller = app.GetInstaller(GetLanguage(null));
|
||||||
return appInstaller.MSDeployPackage.DeclaredParameters;
|
return appInstaller.MSDeployPackage.DeploymentParameters;
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool InstallApplication(
|
public bool InstallApplication(
|
||||||
|
@ -501,7 +502,7 @@ namespace WebsitePanel.Server.Code
|
||||||
DeploymentWellKnownTag dbTag = (DeploymentWellKnownTag)GetDbTag(updatedValues);
|
DeploymentWellKnownTag dbTag = (DeploymentWellKnownTag)GetDbTag(updatedValues);
|
||||||
|
|
||||||
// remove parameters with alien db tags
|
// remove parameters with alien db tags
|
||||||
foreach (DeclaredParameter parameter in appInstaller.MSDeployPackage.DeclaredParameters)
|
foreach (DeploymentParameterWPI parameter in appInstaller.MSDeployPackage.DeploymentParameters)
|
||||||
{
|
{
|
||||||
if (IsAlienDbTaggedParameter(dbTag, parameter))
|
if (IsAlienDbTaggedParameter(dbTag, parameter))
|
||||||
{
|
{
|
||||||
|
@ -726,13 +727,16 @@ namespace WebsitePanel.Server.Code
|
||||||
return DeploymentWellKnownTag.None;
|
return DeploymentWellKnownTag.None;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static bool IsAlienDbTaggedParameter(DeploymentWellKnownTag dbTag, DeclaredParameter parameter)
|
private static bool IsAlienDbTaggedParameter(DeploymentWellKnownTag dbTag, DeploymentParameterWPI parameter)
|
||||||
{
|
{
|
||||||
|
return parameter.HasTags((long)databaseEngineTags) && !parameter.HasTags((long)dbTag);
|
||||||
|
/*
|
||||||
#pragma warning disable 612,618
|
#pragma warning disable 612,618
|
||||||
return (parameter.Tags & databaseEngineTags) != DeploymentWellKnownTag.None
|
return (parameter.Tags & databaseEngineTags) != DeploymentWellKnownTag.None
|
||||||
&&
|
&&
|
||||||
(parameter.Tags & dbTag) == DeploymentWellKnownTag.None;
|
(parameter.Tags & dbTag) == DeploymentWellKnownTag.None;
|
||||||
#pragma warning restore 612,618
|
#pragma warning restore 612,618
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void RemoveUnusedProviders(MSDeployPackage msDeployPackage, DeploymentWellKnownTag dbTag)
|
private static void RemoveUnusedProviders(MSDeployPackage msDeployPackage, DeploymentWellKnownTag dbTag)
|
||||||
|
|
|
@ -155,7 +155,7 @@ namespace WebsitePanel.Portal
|
||||||
}
|
}
|
||||||
|
|
||||||
// MySQL Server
|
// MySQL Server
|
||||||
else if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.MySql) != null)
|
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.MySql) != null)
|
||||||
{
|
{
|
||||||
// load package context
|
// load package context
|
||||||
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||||
|
@ -170,15 +170,15 @@ namespace WebsitePanel.Portal
|
||||||
}
|
}
|
||||||
|
|
||||||
// SQLite
|
// SQLite
|
||||||
else if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.SqLite) != null)
|
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.SqLite) != null)
|
||||||
AddDatabaseEngine(DeploymentParameterWellKnownTag.SqLite, "", GetLocalizedString("DatabaseEngine.SQLite"));
|
AddDatabaseEngine(DeploymentParameterWellKnownTag.SqLite, "", GetLocalizedString("DatabaseEngine.SQLite"));
|
||||||
|
|
||||||
// Flat File
|
// Flat File
|
||||||
else if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.FlatFile) != null)
|
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.FlatFile) != null)
|
||||||
AddDatabaseEngine(DeploymentParameterWellKnownTag.FlatFile, "", GetLocalizedString("DatabaseEngine.FlatFile"));
|
AddDatabaseEngine(DeploymentParameterWellKnownTag.FlatFile, "", GetLocalizedString("DatabaseEngine.FlatFile"));
|
||||||
|
|
||||||
// VistaFB
|
// VistaFB
|
||||||
else if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.VistaDB) != null)
|
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.VistaDB) != null)
|
||||||
AddDatabaseEngine(DeploymentParameterWellKnownTag.VistaDB, "", GetLocalizedString("DatabaseEngine.VistaDB"));
|
AddDatabaseEngine(DeploymentParameterWellKnownTag.VistaDB, "", GetLocalizedString("DatabaseEngine.VistaDB"));
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue