Web App Gallery: Setting of DB policies for multiply databases fixed
This commit is contained in:
parent
ea4fd514e4
commit
4bc50e9f40
1 changed files with 35 additions and 8 deletions
|
@ -150,8 +150,6 @@ namespace WebsitePanel.Portal
|
||||||
AddDatabaseEngine(DeploymentParameterWellKnownTag.Sql, ResourceGroups.MsSql2005, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MsSql2005));
|
AddDatabaseEngine(DeploymentParameterWellKnownTag.Sql, ResourceGroups.MsSql2005, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MsSql2005));
|
||||||
if (cntx.Groups.ContainsKey(ResourceGroups.MsSql2000))
|
if (cntx.Groups.ContainsKey(ResourceGroups.MsSql2000))
|
||||||
AddDatabaseEngine(DeploymentParameterWellKnownTag.Sql, ResourceGroups.MsSql2000, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MsSql2000));
|
AddDatabaseEngine(DeploymentParameterWellKnownTag.Sql, ResourceGroups.MsSql2000, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MsSql2000));
|
||||||
|
|
||||||
SetDBPolicies(UserSettings.MSSQL_POLICY, parameters);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// MySQL Server
|
// MySQL Server
|
||||||
|
@ -165,8 +163,6 @@ namespace WebsitePanel.Portal
|
||||||
AddDatabaseEngine(DeploymentParameterWellKnownTag.MySql, ResourceGroups.MySql5, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MySql5));
|
AddDatabaseEngine(DeploymentParameterWellKnownTag.MySql, ResourceGroups.MySql5, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MySql5));
|
||||||
if (cntx.Groups.ContainsKey(ResourceGroups.MySql4))
|
if (cntx.Groups.ContainsKey(ResourceGroups.MySql4))
|
||||||
AddDatabaseEngine(DeploymentParameterWellKnownTag.MySql, ResourceGroups.MySql4, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MySql4));
|
AddDatabaseEngine(DeploymentParameterWellKnownTag.MySql, ResourceGroups.MySql4, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MySql4));
|
||||||
|
|
||||||
SetDBPolicies(UserSettings.MYSQL_POLICY, parameters);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// SQLite
|
// SQLite
|
||||||
|
@ -181,6 +177,7 @@ namespace WebsitePanel.Portal
|
||||||
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.VistaDB) != null)
|
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.VistaDB) != null)
|
||||||
AddDatabaseEngine(DeploymentParameterWellKnownTag.VistaDB, "", GetLocalizedString("DatabaseEngine.VistaDB"));
|
AddDatabaseEngine(DeploymentParameterWellKnownTag.VistaDB, "", GetLocalizedString("DatabaseEngine.VistaDB"));
|
||||||
|
|
||||||
|
BindDBPolicies(parameters);
|
||||||
|
|
||||||
// hide module if no database required
|
// hide module if no database required
|
||||||
divDatabase.Visible = (databaseEngines.Items.Count > 0);
|
divDatabase.Visible = (databaseEngines.Items.Count > 0);
|
||||||
|
@ -190,18 +187,42 @@ namespace WebsitePanel.Portal
|
||||||
}
|
}
|
||||||
|
|
||||||
#region prefix & suffix for database name & username
|
#region prefix & suffix for database name & username
|
||||||
private void SetDBPolicies(string policy, IEnumerable<DeploymentParameter> parameters)
|
private void BindDBPolicies(List<DeploymentParameter> parameters)
|
||||||
|
{
|
||||||
|
// MS SQL Server
|
||||||
|
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.Sql) != null)
|
||||||
|
{
|
||||||
|
SetDBPolicies(UserSettings.MSSQL_POLICY, parameters, DeploymentParameterWellKnownTag.Sql);
|
||||||
|
}
|
||||||
|
|
||||||
|
// MySQL Server
|
||||||
|
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.MySql) != null)
|
||||||
|
{
|
||||||
|
SetDBPolicies(UserSettings.MYSQL_POLICY, parameters, DeploymentParameterWellKnownTag.MySql);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void SetDBPolicies(string policy, IEnumerable<DeploymentParameter> parameters, DeploymentParameterWellKnownTag dbTag)
|
||||||
{
|
{
|
||||||
foreach (DeploymentParameter parameter in parameters)
|
foreach (DeploymentParameter parameter in parameters)
|
||||||
{
|
{
|
||||||
if ((parameter.WellKnownTags & DeploymentParameterWellKnownTag.DBName) != 0)
|
if (
|
||||||
|
(parameter.WellKnownTags & DeploymentParameterWellKnownTag.DBName) != 0
|
||||||
|
&&
|
||||||
|
(parameter.WellKnownTags & dbTag) != 0
|
||||||
|
)
|
||||||
{
|
{
|
||||||
// database name
|
// database name
|
||||||
string policyValue = GetPackagePolicy(policy, "DatabaseNamePolicy");
|
string policyValue = GetPackagePolicy(policy, "DatabaseNamePolicy");
|
||||||
ApplyPrefixSuffixPolicy(parameter, policyValue);
|
ApplyPrefixSuffixPolicy(parameter, policyValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((parameter.WellKnownTags & DeploymentParameterWellKnownTag.DBUserName) != 0)
|
if (
|
||||||
|
(parameter.WellKnownTags & DeploymentParameterWellKnownTag.DBUserName) != 0
|
||||||
|
&&
|
||||||
|
(parameter.WellKnownTags & dbTag) != 0
|
||||||
|
)
|
||||||
{
|
{
|
||||||
// user name
|
// user name
|
||||||
string policyValue = GetPackagePolicy(policy, "UserNamePolicy");
|
string policyValue = GetPackagePolicy(policy, "UserNamePolicy");
|
||||||
|
@ -302,7 +323,13 @@ namespace WebsitePanel.Portal
|
||||||
|
|
||||||
protected void databaseEngines_SelectedIndexChanged(object sender, EventArgs e)
|
protected void databaseEngines_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
BindParameters();
|
// load parameters
|
||||||
|
List<DeploymentParameter> parameters = GetApplicationParameters();
|
||||||
|
if (parameters == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
BindDBPolicies(parameters);
|
||||||
|
BindParameters(parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void databaseMode_SelectedIndexChanged(object sender, EventArgs e)
|
protected void databaseMode_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue