diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/Scheduling/Scheduler.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/Scheduling/Scheduler.cs index 8da3adaf..5b08d474 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/Scheduling/Scheduler.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/Scheduling/Scheduler.cs @@ -33,6 +33,7 @@ using System.Collections; using System.Diagnostics; using System.Collections.Generic; using System.Text; +using System.Data.SqlClient; namespace WebsitePanel.EnterpriseServer { @@ -145,7 +146,22 @@ namespace WebsitePanel.EnterpriseServer schedule.ScheduleInfo.LastRun = DateTime.Now; // update schedule - SchedulerController.UpdateSchedule(schedule.ScheduleInfo); + int MAX_RETRY_COUNT = 10; + int counter = 0; + while (counter < MAX_RETRY_COUNT) + { + try + { + SchedulerController.UpdateSchedule(schedule.ScheduleInfo); + break; + } + catch (SqlException) + { + System.Threading.Thread.Sleep(1000); + } + + counter++; + } // skip execution if the current task is still running scheduledTasks = TaskManager.GetScheduledTasks(); @@ -157,7 +173,13 @@ namespace WebsitePanel.EnterpriseServer } catch (Exception Ex) { - TaskManager.WriteError(string.Format("RunSchedule Error : {0}", Ex.Message)); + try + { + TaskManager.WriteError(string.Format("RunSchedule Error : {0}", Ex.Message)); + } + catch(Exception) + { + } } } } diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/Scheduling/SchedulerJob.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/Scheduling/SchedulerJob.cs index 301fa943..24df4082 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/Scheduling/SchedulerJob.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/Scheduling/SchedulerJob.cs @@ -119,7 +119,13 @@ namespace WebsitePanel.EnterpriseServer finally { // complete task - TaskManager.CompleteTask(); + try + { + TaskManager.CompleteTask(); + } + catch (Exception) + { + } } } } diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/SiteSettings.config b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/SiteSettings.config index 4fc71ff6..7d01aafd 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/SiteSettings.config +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/SiteSettings.config @@ -3,7 +3,7 @@ WebsitePanel - http://localhost:9002 + http://hstprov01.hosting.local:9002 UserCulture UserTheme diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/App_LocalResources/Exchange_Settings.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/App_LocalResources/Exchange_Settings.ascx.resx index c2df5d53..8ed90f04 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/App_LocalResources/Exchange_Settings.ascx.resx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/App_LocalResources/Exchange_Settings.ascx.resx @@ -192,4 +192,10 @@ Database Availability Group: + + e.g. http://server.domain.com/PowerShell + + + Powershell URL: + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx index 48636a4d..be0220cb 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx @@ -1,6 +1,25 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Exchange_Settings.ascx.cs" Inherits="WebsitePanel.Portal.ProviderControls.Exchange2010_Settings" %> + + + + + + + + + + +
+ + +
+ + + +
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx.cs index 944b4d94..51a9393b 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx.cs @@ -91,6 +91,8 @@ namespace WebsitePanel.Portal.ProviderControls txtStorageGroup.Text = ""; locMailboxDAG.Visible = false; + + powershellUrl1.Visible = powershellUrl2.Visible = false; break; case EXCHANGE2010SP2_PROVIDER_ID: @@ -101,6 +103,7 @@ namespace WebsitePanel.Portal.ProviderControls txtStorageGroup.Text = ""; locMailboxDatabase.Visible = false; + powershellUrl1.Visible = powershellUrl2.Visible = false; break; case EXCHANGE2013_PROVIDER_ID: @@ -111,6 +114,7 @@ namespace WebsitePanel.Portal.ProviderControls txtStorageGroup.Text = ""; locMailboxDatabase.Visible = false; + powershellUrl1.Visible = powershellUrl2.Visible = true; break; default: @@ -147,6 +151,7 @@ namespace WebsitePanel.Portal.ProviderControls txtActiveSyncServer.Text = settings["ActiveSyncServer"]; txtOABServer.Text = settings["OABServer"]; txtPublicFolderServer.Text = settings["PublicFolderServer"]; + txtPowerShellUrl.Text = settings["PowerShellUrl"]; UpdateHubTransportsGrid(); UpdateClientAccessGrid(); @@ -173,6 +178,7 @@ namespace WebsitePanel.Portal.ProviderControls settings["PublicFolderServer"] = txtPublicFolderServer.Text; settings["StorageGroup"] = txtStorageGroup.Text; + settings["PowerShellUrl"] = txtPowerShellUrl.Text; } public void BindExchangeServices(DropDownList ddl, bool isHubservice) diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx.designer.cs index 771c7fb0..7cf03022 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx.designer.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Exchange_Settings.ascx.designer.cs @@ -12,6 +12,51 @@ namespace WebsitePanel.Portal.ProviderControls { public partial class Exchange2010_Settings { + /// + /// powershellUrl1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlTableRow powershellUrl1; + + /// + /// lblFileServiceInfo control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblFileServiceInfo; + + /// + /// powershellUrl2 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlTableRow powershellUrl2; + + /// + /// loclocPowerShellUrl control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Localize loclocPowerShellUrl; + + /// + /// txtPowerShellUrl control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox txtPowerShellUrl; + /// /// storageGroup control. ///