From a2beec7fe4b8d5559d3842d62e98a7b71063ea86 Mon Sep 17 00:00:00 2001 From: omara_vworks Date: Thu, 19 Jul 2012 13:16:33 -0400 Subject: [PATCH] Commit Contribution from Helicon Includes: - complete re-write of Web Application Gallery - Addition of Web PI Installer in Server module --- .../WebsitePanel.Installer/Updater.exe | Bin 198144 -> 198144 bytes .../Lib/Microsoft.Web.PlatformInstaller.dll | Bin 0 -> 333664 bytes .../Microsoft/Microsoft.Web.Deployment.dll | Bin 956296 -> 1218376 bytes .../System/SystemSettings.cs | 1 + .../ServersProxy.cs | 747 +++++++- .../WebApplicationGalleryProxy.cs | 325 +++- .../OperatingSystemController.cs | 63 + .../WebAppGallery/WebAppGalleryController.cs | 208 ++- .../esServers.asmx.cs | 103 ++ .../esWebApplicationGallery.asmx.cs | 42 +- .../Common/WPIEntries.cs | 214 +++ .../ResultObjects/ResultObject.cs | 2 +- .../ResultObjects/WebAppGallery.cs | 4 + .../Web/IWebServer.cs | 18 +- .../WebAppGallery/DeploymentParameter.cs | 71 +- .../WebAppGallery/GalleryApplication.cs | 6 +- .../WebAppGallery/GalleryErrors.cs | 3 + .../WebsitePanel.Providers.Base.csproj | 1 + ...bsitePanel.Providers.Database.MySQL.csproj | 2 +- .../WebsitePanel.Providers.Web.IIS70/IIs70.cs | 9 +- .../WebsitePanel.Providers.Web.IIs70.csproj | 5 + .../WebsitePanel.Providers.Web.IIs60/IIs60.cs | 412 ++--- .../WPIApplicationGallery.cs | 438 +++++ .../WebApplicationGallery.cs | 3 +- .../WebsitePanel.Providers.Web.IIs60.csproj | 10 +- .../WebServerProxy.cs | 1559 +++++++++-------- .../WindowsServerProxy.cs | 1422 ++++++++++----- .../WebsitePanel.Server.Utils/StringUtils.cs | 14 + .../Properties/AssemblyInfo.cs | 65 + .../WebsitePanel.Server.WPIService/Server.cs | 68 + .../WPIService.cs | 247 +++ .../WebsitePanel.Server.WPIService.csproj | 76 + .../Properties/AssemblyInfo.cs | 65 + .../WPIServiceContract.cs | 46 + ...sitePanel.Server.WPIServiceContract.csproj | 54 + WebsitePanel/Sources/WebsitePanel.Server.sln | 12 + .../Code/UsernameAssertion.cs | 5 +- .../WebsitePanel.Server/Code/WPIHelper.cs | 807 +++++++++ .../Sources/WebsitePanel.Server/Web.config | 4 +- .../WebsitePanel.Server/WebServer.asmx.cs | 111 +- .../WebsitePanel.Server.csproj | 15 + .../WebsitePanel.Server/WindowsServer.asmx.cs | 562 +++++- .../App_Data/WebsitePanel_Modules.config | 3 +- .../WebsitePanel_Modules.ascx.resx | 3 + .../WebsitePanel_Pages.ascx.resx | 2 +- .../WebsitePanel_SharedResources.ascx.resx | 5 +- .../ServersEditWebPlatformInstaller.ascx.resx | 186 ++ .../WebApplicationGalleryParams.ascx.resx | 6 + .../Code/Helpers/WebAppGalleryHelpers.cs | 6 + .../ProviderControls/IIS70_Settings.ascx | 30 +- .../ProviderControls/IIS70_Settings.ascx.cs | 17 +- .../IIS70_Settings.ascx.designer.cs | 74 +- .../WebsitePanel/ServersEditServer.ascx | 6 + .../WebsitePanel/ServersEditServer.ascx.cs | 1 + .../ServersEditServer.ascx.designer.cs | 41 +- ...erversEditSystemProcesses.ascx.designer.cs | 93 +- .../ServersEditWebPlatformInstaller.ascx | 327 ++++ .../ServersEditWebPlatformInstaller.ascx.cs | 569 ++++++ ...sEditWebPlatformInstaller.ascx.designer.cs | 377 ++++ ...erversEditWindowsServices.ascx.designer.cs | 93 +- .../WebsitePanel/SystemSettings.ascx | 25 + .../WebsitePanel/SystemSettings.ascx.cs | 42 +- .../SystemSettings.ascx.designer.cs | 208 ++- .../EditFeedsList.ascx.resx | 141 ++ .../UserControls/DomainListControlBase.cs | 184 ++ .../UserControls/EditDomainsList.ascx | 4 +- .../UserControls/EditDomainsList.ascx.cs | 127 +- .../EditDomainsList.ascx.designer.cs | 53 +- .../UserControls/EditFeedsList.ascx | 38 + .../UserControls/EditFeedsList.ascx.cs | 54 + .../EditFeedsList.ascx.designer.cs | 62 + .../WebsitePanel/WebApplicationGallery.ascx | 112 +- .../WebApplicationGallery.ascx.cs | 103 +- .../WebApplicationGallery.ascx.designer.cs | 62 +- .../WebApplicationGalleryHeader.ascx.cs | 5 +- .../WebApplicationGalleryParams.ascx | 16 +- .../WebApplicationGalleryParams.ascx.cs | 19 +- ...bApplicationGalleryParams.ascx.designer.cs | 57 +- .../WebsitePanel.Portal.Modules.csproj | 22 + WebsitePanel/build.xml | 6 +- 80 files changed, 9236 insertions(+), 1762 deletions(-) create mode 100644 WebsitePanel/Lib/Microsoft.Web.PlatformInstaller.dll create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.Base/Common/WPIEntries.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WPIWebApplicationGallery/WPIApplicationGallery.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Server.WPIService/Properties/AssemblyInfo.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Server.WPIService/Server.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Server.WPIService/WPIService.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Server.WPIService/WebsitePanel.Server.WPIService.csproj create mode 100644 WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/Properties/AssemblyInfo.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/WPIServiceContract.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/WebsitePanel.Server.WPIServiceContract.csproj create mode 100644 WebsitePanel/Sources/WebsitePanel.Server/Code/WPIHelper.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/App_LocalResources/ServersEditWebPlatformInstaller.ascx.resx create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx.designer.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/App_LocalResources/EditFeedsList.ascx.resx create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/DomainListControlBase.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx.designer.cs diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Updater.exe b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Updater.exe index b332a39d6962e74d7be4c8d20c4798ba7a50c924..fa8aa801514fbd5e87dada06771c15d8f0063754 100644 GIT binary patch delta 46 zcmV+}0MY+|j0}K`43LNfW3nI&u+(7t82TyX-V El=Vdx1poj5 delta 46 zcmV+}0MY+|j0}K`43LNfj?Mp1fsBQW0kw<*z;F<)(BJ;V-vUUa*5&uULa(&9TyX-V Elp97ERsaA1 diff --git a/WebsitePanel/Lib/Microsoft.Web.PlatformInstaller.dll b/WebsitePanel/Lib/Microsoft.Web.PlatformInstaller.dll new file mode 100644 index 0000000000000000000000000000000000000000..a94eef6f1abb853f44d8853f0bae35155f5a4a49 GIT binary patch literal 333664 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 literal 0 HcmV?d00001 diff --git a/WebsitePanel/Lib/References/Microsoft/Microsoft.Web.Deployment.dll b/WebsitePanel/Lib/References/Microsoft/Microsoft.Web.Deployment.dll index 8b4b2ff3cc758bd6b56314fd7e633874a3af829e..5a16662cd5bef75ed0aa65fd386a15b3107badbb 100644 GIT binary patch literal 1218376 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

`NZe z@}2pv(th)s>^FPc5|<`9S$HPu^TO5>v@Q4nH4Yu4>3aO_2k}Qg<|moopYbpm;|EZr zKgh8$dP+|wNoP0-YI+H!Tr3fl?u=6BoqHCyI}CfK=yb02A&T?9opY@p{wU#&a(&zS zn#Fw=Fx(G&*4jqFb4ZZ;7roq;;=}A2x|U+n(43Brht~9(0B*NqrP5%+OARNSjOONo z0(++eZ4FcvCpR?1j$mE+Sh@l|T4{Y3<9BMbm1e(Bdz74h_n~*;M(D{U-bi8?a60k3 zYBeyVVTTFh;>_wMoYg*4??yeJv6D9YOcIb|n$l8!kK+Jcs*Gt9H5QXj2NV~3oMJOg zc7S_f{|1z`^_JJ@f1U*{od6=3S$}uSYs>t?OdcBb}mvL1lPijawQ{I$A`axSoZj^ zU5Gw8Y`+^Ex`&h4k58Qx{$Z8SIsXfkcaZvbUOGl@dI^?m{fSYv;B8hWXK{RxS1RgP zjt-7ikjH8b=QNJrpp9gCM6X`4!;mhOMR1|DEaqh-W60q-bEL$tPlJw^8Pgmul_VMB zItp%!>H$BtJX&gNt%=`5<@CITw7N&peqa9_8d7>@@1nT5I|cjZ!iKM~`3ZrHD7E9pb~Q~X@WIQm*PT4k45fW95j z%~v~u|FIrDbIn<_ORG$yzMsV4?`Yhr;F1?O8mE5ZdMlu@dS@8UGszidF{nCr=Iq1F z*8jmFrpBby!6H4zpkivP^3H=^h0e^fNqf)|I;jy`dt}W|axCM8nKMD(>@bYb|fqlGMH=a2jEOd1@3)+$Pgn&s5cH7Ejh=2qwXNqXpXvC zHFg_y#s*NaA987WM(3^onyVes8oML#a#)u0ry-&0mz}_cX3v}~2kj*_^^Pu4G zXpN1EQA`53@xkaF0uANJ#gedrP5sZV`bP^JUyr^RH=J%Up9p25O3P;1ra&}kkRaKW zHUAWlD-Fi~ryn-mszUHNdgxHbRD>j!JMUqhVQ0)LxD#L1xH7uDuIt>VauN#+--qR$ zvA}Q*+`>w0C_ivTH9pm5`|Jh4F2|3-Grp)gzSGPj@sBPV-DwL#DK61?-Zd1=cz3$B zt!Mmhn⪚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

}o;0`sNl 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%0A=)j0OYUrRcx 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 a>-9ID<4*D4^2wf6n=tv%uD_eAPyG{ZzqnKY diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Base/System/SystemSettings.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Base/System/SystemSettings.cs index bc6849e6..904dec23 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Base/System/SystemSettings.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Base/System/SystemSettings.cs @@ -41,6 +41,7 @@ namespace WebsitePanel.EnterpriseServer public const string SMTP_SETTINGS = "SmtpSettings"; public const string BACKUP_SETTINGS = "BackupSettings"; public const string SETUP_SETTINGS = "SetupSettings"; + public const string WPI_SETTINGS = "WpiSettings"; public static readonly SystemSettings Empty = new SystemSettings { SettingsArray = new string[][] {} }; diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/ServersProxy.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/ServersProxy.cs index 2643979b..1b51bbe5 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/ServersProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/ServersProxy.cs @@ -48,11 +48,11 @@ namespace WebsitePanel.EnterpriseServer using System; using System.Diagnostics; using System.Data; - + using WebsitePanel.Providers; using WebsitePanel.Providers.Common; using WebsitePanel.Server; using WebsitePanel.Providers.DNS; - using WebsitePanel.Providers.ResultObjects; + using WebsitePanel.Providers.ResultObjects; /// @@ -251,6 +251,28 @@ namespace WebsitePanel.EnterpriseServer private System.Threading.SendOrPostCallback TerminateWindowsProcessOperationCompleted; + private System.Threading.SendOrPostCallback InitWPIFeedsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPITabsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIKeywordsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIProductsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIProductsFilteredOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIProductsWithDependenciesOperationCompleted; + + private System.Threading.SendOrPostCallback InstallWPIProductsOperationCompleted; + + private System.Threading.SendOrPostCallback CancelInstallWPIProductsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIStatusOperationCompleted; + + private System.Threading.SendOrPostCallback WpiGetLogFileDirectoryOperationCompleted; + + private System.Threading.SendOrPostCallback WpiGetLogsInDirectoryOperationCompleted; + private System.Threading.SendOrPostCallback GetWindowsServicesOperationCompleted; private System.Threading.SendOrPostCallback ChangeWindowsServiceStatusOperationCompleted; @@ -553,6 +575,39 @@ namespace WebsitePanel.EnterpriseServer /// public event TerminateWindowsProcessCompletedEventHandler TerminateWindowsProcessCompleted; + /// + public event InitWPIFeedsCompletedEventHandler InitWPIFeedsCompleted; + + /// + public event GetWPITabsCompletedEventHandler GetWPITabsCompleted; + + /// + public event GetWPIKeywordsCompletedEventHandler GetWPIKeywordsCompleted; + + /// + public event GetWPIProductsCompletedEventHandler GetWPIProductsCompleted; + + /// + public event GetWPIProductsFilteredCompletedEventHandler GetWPIProductsFilteredCompleted; + + /// + public event GetWPIProductsWithDependenciesCompletedEventHandler GetWPIProductsWithDependenciesCompleted; + + /// + public event InstallWPIProductsCompletedEventHandler InstallWPIProductsCompleted; + + /// + public event CancelInstallWPIProductsCompletedEventHandler CancelInstallWPIProductsCompleted; + + /// + public event GetWPIStatusCompletedEventHandler GetWPIStatusCompleted; + + /// + public event WpiGetLogFileDirectoryCompletedEventHandler WpiGetLogFileDirectoryCompleted; + + /// + public event WpiGetLogsInDirectoryCompletedEventHandler WpiGetLogsInDirectoryCompleted; + /// public event GetWindowsServicesCompletedEventHandler GetWindowsServicesCompleted; @@ -5451,9 +5506,471 @@ namespace WebsitePanel.EnterpriseServer } /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetWindowsServices", RequestNamespace = "http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace = "http://smbsaas/websitepanel/enterpriseserver", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public WindowsService[] GetWindowsServices(int serverId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/InitWPIFeeds", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void InitWPIFeeds(int serverId) { + this.Invoke("InitWPIFeeds", new object[] { + serverId}); + } + + /// + public System.IAsyncResult BeginInitWPIFeeds(int serverId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("InitWPIFeeds", new object[] { + serverId}, callback, asyncState); + } + + /// + public void EndInitWPIFeeds(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void InitWPIFeedsAsync(int serverId) { + this.InitWPIFeedsAsync(serverId, null); + } + + /// + public void InitWPIFeedsAsync(int serverId, object userState) { + if ((this.InitWPIFeedsOperationCompleted == null)) { + this.InitWPIFeedsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInitWPIFeedsOperationCompleted); + } + this.InvokeAsync("InitWPIFeeds", new object[] { + serverId}, this.InitWPIFeedsOperationCompleted, userState); + } + + private void OnInitWPIFeedsOperationCompleted(object arg) { + if ((this.InitWPIFeedsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.InitWPIFeedsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetWPITabs", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPITab[] GetWPITabs(int serverId) { + object[] results = this.Invoke("GetWPITabs", new object[] { + serverId}); + return ((WPITab[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPITabs(int serverId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPITabs", new object[] { + serverId}, callback, asyncState); + } + + /// + public WPITab[] EndGetWPITabs(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPITab[])(results[0])); + } + + /// + public void GetWPITabsAsync(int serverId) { + this.GetWPITabsAsync(serverId, null); + } + + /// + public void GetWPITabsAsync(int serverId, object userState) { + if ((this.GetWPITabsOperationCompleted == null)) { + this.GetWPITabsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPITabsOperationCompleted); + } + this.InvokeAsync("GetWPITabs", new object[] { + serverId}, this.GetWPITabsOperationCompleted, userState); + } + + private void OnGetWPITabsOperationCompleted(object arg) { + if ((this.GetWPITabsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPITabsCompleted(this, new GetWPITabsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetWPIKeywords", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPIKeyword[] GetWPIKeywords(int serverId) { + object[] results = this.Invoke("GetWPIKeywords", new object[] { + serverId}); + return ((WPIKeyword[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIKeywords(int serverId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIKeywords", new object[] { + serverId}, callback, asyncState); + } + + /// + public WPIKeyword[] EndGetWPIKeywords(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPIKeyword[])(results[0])); + } + + /// + public void GetWPIKeywordsAsync(int serverId) { + this.GetWPIKeywordsAsync(serverId, null); + } + + /// + public void GetWPIKeywordsAsync(int serverId, object userState) { + if ((this.GetWPIKeywordsOperationCompleted == null)) { + this.GetWPIKeywordsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIKeywordsOperationCompleted); + } + this.InvokeAsync("GetWPIKeywords", new object[] { + serverId}, this.GetWPIKeywordsOperationCompleted, userState); + } + + private void OnGetWPIKeywordsOperationCompleted(object arg) { + if ((this.GetWPIKeywordsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIKeywordsCompleted(this, new GetWPIKeywordsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetWPIProducts", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPIProduct[] GetWPIProducts(int serverId, string tabId, string keywordId) { + object[] results = this.Invoke("GetWPIProducts", new object[] { + serverId, + tabId, + keywordId}); + return ((WPIProduct[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIProducts(int serverId, string tabId, string keywordId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIProducts", new object[] { + serverId, + tabId, + keywordId}, callback, asyncState); + } + + /// + public WPIProduct[] EndGetWPIProducts(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPIProduct[])(results[0])); + } + + /// + public void GetWPIProductsAsync(int serverId, string tabId, string keywordId) { + this.GetWPIProductsAsync(serverId, tabId, keywordId, null); + } + + /// + public void GetWPIProductsAsync(int serverId, string tabId, string keywordId, object userState) { + if ((this.GetWPIProductsOperationCompleted == null)) { + this.GetWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsOperationCompleted); + } + this.InvokeAsync("GetWPIProducts", new object[] { + serverId, + tabId, + keywordId}, this.GetWPIProductsOperationCompleted, userState); + } + + private void OnGetWPIProductsOperationCompleted(object arg) { + if ((this.GetWPIProductsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIProductsCompleted(this, new GetWPIProductsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetWPIProductsFiltered", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPIProduct[] GetWPIProductsFiltered(int serverId, string keywordId) { + object[] results = this.Invoke("GetWPIProductsFiltered", new object[] { + serverId, + keywordId}); + return ((WPIProduct[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIProductsFiltered(int serverId, string keywordId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIProductsFiltered", new object[] { + serverId, + keywordId}, callback, asyncState); + } + + /// + public WPIProduct[] EndGetWPIProductsFiltered(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPIProduct[])(results[0])); + } + + /// + public void GetWPIProductsFilteredAsync(int serverId, string keywordId) { + this.GetWPIProductsFilteredAsync(serverId, keywordId, null); + } + + /// + public void GetWPIProductsFilteredAsync(int serverId, string keywordId, object userState) { + if ((this.GetWPIProductsFilteredOperationCompleted == null)) { + this.GetWPIProductsFilteredOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsFilteredOperationCompleted); + } + this.InvokeAsync("GetWPIProductsFiltered", new object[] { + serverId, + keywordId}, this.GetWPIProductsFilteredOperationCompleted, userState); + } + + private void OnGetWPIProductsFilteredOperationCompleted(object arg) { + if ((this.GetWPIProductsFilteredCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIProductsFilteredCompleted(this, new GetWPIProductsFilteredCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetWPIProductsWithDependencies", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPIProduct[] GetWPIProductsWithDependencies(int serverId, string[] products) { + object[] results = this.Invoke("GetWPIProductsWithDependencies", new object[] { + serverId, + products}); + return ((WPIProduct[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIProductsWithDependencies(int serverId, string[] products, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIProductsWithDependencies", new object[] { + serverId, + products}, callback, asyncState); + } + + /// + public WPIProduct[] EndGetWPIProductsWithDependencies(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPIProduct[])(results[0])); + } + + /// + public void GetWPIProductsWithDependenciesAsync(int serverId, string[] products) { + this.GetWPIProductsWithDependenciesAsync(serverId, products, null); + } + + /// + public void GetWPIProductsWithDependenciesAsync(int serverId, string[] products, object userState) { + if ((this.GetWPIProductsWithDependenciesOperationCompleted == null)) { + this.GetWPIProductsWithDependenciesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsWithDependenciesOperationCompleted); + } + this.InvokeAsync("GetWPIProductsWithDependencies", new object[] { + serverId, + products}, this.GetWPIProductsWithDependenciesOperationCompleted, userState); + } + + private void OnGetWPIProductsWithDependenciesOperationCompleted(object arg) { + if ((this.GetWPIProductsWithDependenciesCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIProductsWithDependenciesCompleted(this, new GetWPIProductsWithDependenciesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/InstallWPIProducts", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void InstallWPIProducts(int serverId, string[] products) { + this.Invoke("InstallWPIProducts", new object[] { + serverId, + products}); + } + + /// + public System.IAsyncResult BeginInstallWPIProducts(int serverId, string[] products, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("InstallWPIProducts", new object[] { + serverId, + products}, callback, asyncState); + } + + /// + public void EndInstallWPIProducts(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void InstallWPIProductsAsync(int serverId, string[] products) { + this.InstallWPIProductsAsync(serverId, products, null); + } + + /// + public void InstallWPIProductsAsync(int serverId, string[] products, object userState) { + if ((this.InstallWPIProductsOperationCompleted == null)) { + this.InstallWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInstallWPIProductsOperationCompleted); + } + this.InvokeAsync("InstallWPIProducts", new object[] { + serverId, + products}, this.InstallWPIProductsOperationCompleted, userState); + } + + private void OnInstallWPIProductsOperationCompleted(object arg) { + if ((this.InstallWPIProductsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.InstallWPIProductsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/CancelInstallWPIProducts", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void CancelInstallWPIProducts(int serviceId) { + this.Invoke("CancelInstallWPIProducts", new object[] { + serviceId}); + } + + /// + public System.IAsyncResult BeginCancelInstallWPIProducts(int serviceId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("CancelInstallWPIProducts", new object[] { + serviceId}, callback, asyncState); + } + + /// + public void EndCancelInstallWPIProducts(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void CancelInstallWPIProductsAsync(int serviceId) { + this.CancelInstallWPIProductsAsync(serviceId, null); + } + + /// + public void CancelInstallWPIProductsAsync(int serviceId, object userState) { + if ((this.CancelInstallWPIProductsOperationCompleted == null)) { + this.CancelInstallWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCancelInstallWPIProductsOperationCompleted); + } + this.InvokeAsync("CancelInstallWPIProducts", new object[] { + serviceId}, this.CancelInstallWPIProductsOperationCompleted, userState); + } + + private void OnCancelInstallWPIProductsOperationCompleted(object arg) { + if ((this.CancelInstallWPIProductsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.CancelInstallWPIProductsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetWPIStatus", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public string GetWPIStatus(int serverId) { + object[] results = this.Invoke("GetWPIStatus", new object[] { + serverId}); + return ((string)(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIStatus(int serverId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIStatus", new object[] { + serverId}, callback, asyncState); + } + + /// + public string EndGetWPIStatus(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((string)(results[0])); + } + + /// + public void GetWPIStatusAsync(int serverId) { + this.GetWPIStatusAsync(serverId, null); + } + + /// + public void GetWPIStatusAsync(int serverId, object userState) { + if ((this.GetWPIStatusOperationCompleted == null)) { + this.GetWPIStatusOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIStatusOperationCompleted); + } + this.InvokeAsync("GetWPIStatus", new object[] { + serverId}, this.GetWPIStatusOperationCompleted, userState); + } + + private void OnGetWPIStatusOperationCompleted(object arg) { + if ((this.GetWPIStatusCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIStatusCompleted(this, new GetWPIStatusCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/WpiGetLogFileDirectory", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public string WpiGetLogFileDirectory(int serverId) { + object[] results = this.Invoke("WpiGetLogFileDirectory", new object[] { + serverId}); + return ((string)(results[0])); + } + + /// + public System.IAsyncResult BeginWpiGetLogFileDirectory(int serverId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("WpiGetLogFileDirectory", new object[] { + serverId}, callback, asyncState); + } + + /// + public string EndWpiGetLogFileDirectory(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((string)(results[0])); + } + + /// + public void WpiGetLogFileDirectoryAsync(int serverId) { + this.WpiGetLogFileDirectoryAsync(serverId, null); + } + + /// + public void WpiGetLogFileDirectoryAsync(int serverId, object userState) { + if ((this.WpiGetLogFileDirectoryOperationCompleted == null)) { + this.WpiGetLogFileDirectoryOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWpiGetLogFileDirectoryOperationCompleted); + } + this.InvokeAsync("WpiGetLogFileDirectory", new object[] { + serverId}, this.WpiGetLogFileDirectoryOperationCompleted, userState); + } + + private void OnWpiGetLogFileDirectoryOperationCompleted(object arg) { + if ((this.WpiGetLogFileDirectoryCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.WpiGetLogFileDirectoryCompleted(this, new WpiGetLogFileDirectoryCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/WpiGetLogsInDirectory", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SettingPair[] WpiGetLogsInDirectory(int serverId, string Path) { + object[] results = this.Invoke("WpiGetLogsInDirectory", new object[] { + serverId, + Path}); + return ((SettingPair[])(results[0])); + } + + /// + public System.IAsyncResult BeginWpiGetLogsInDirectory(int serverId, string Path, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("WpiGetLogsInDirectory", new object[] { + serverId, + Path}, callback, asyncState); + } + + /// + public SettingPair[] EndWpiGetLogsInDirectory(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((SettingPair[])(results[0])); + } + + /// + public void WpiGetLogsInDirectoryAsync(int serverId, string Path) { + this.WpiGetLogsInDirectoryAsync(serverId, Path, null); + } + + /// + public void WpiGetLogsInDirectoryAsync(int serverId, string Path, object userState) { + if ((this.WpiGetLogsInDirectoryOperationCompleted == null)) { + this.WpiGetLogsInDirectoryOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWpiGetLogsInDirectoryOperationCompleted); + } + this.InvokeAsync("WpiGetLogsInDirectory", new object[] { + serverId, + Path}, this.WpiGetLogsInDirectoryOperationCompleted, userState); + } + + private void OnWpiGetLogsInDirectoryOperationCompleted(object arg) { + if ((this.WpiGetLogsInDirectoryCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.WpiGetLogsInDirectoryCompleted(this, new WpiGetLogsInDirectoryCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetWindowsServices", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WindowsService[] GetWindowsServices(int serverId) { object[] results = this.Invoke("GetWindowsServices", new object[] { serverId}); return ((WindowsService[])(results[0])); @@ -8641,6 +9158,226 @@ namespace WebsitePanel.EnterpriseServer } } + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void InitWPIFeedsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPITabsCompletedEventHandler(object sender, GetWPITabsCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPITabsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPITabsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPITab[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPITab[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIKeywordsCompletedEventHandler(object sender, GetWPIKeywordsCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIKeywordsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIKeywordsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPIKeyword[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPIKeyword[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIProductsCompletedEventHandler(object sender, GetWPIProductsCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIProductsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIProductsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPIProduct[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPIProduct[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIProductsFilteredCompletedEventHandler(object sender, GetWPIProductsFilteredCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIProductsFilteredCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIProductsFilteredCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPIProduct[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPIProduct[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIProductsWithDependenciesCompletedEventHandler(object sender, GetWPIProductsWithDependenciesCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIProductsWithDependenciesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIProductsWithDependenciesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPIProduct[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPIProduct[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void InstallWPIProductsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void CancelInstallWPIProductsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIStatusCompletedEventHandler(object sender, GetWPIStatusCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIStatusCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIStatusCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public string Result { + get { + this.RaiseExceptionIfNecessary(); + return ((string)(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void WpiGetLogFileDirectoryCompletedEventHandler(object sender, WpiGetLogFileDirectoryCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class WpiGetLogFileDirectoryCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal WpiGetLogFileDirectoryCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public string Result { + get { + this.RaiseExceptionIfNecessary(); + return ((string)(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void WpiGetLogsInDirectoryCompletedEventHandler(object sender, WpiGetLogsInDirectoryCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class WpiGetLogsInDirectoryCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal WpiGetLogsInDirectoryCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public SettingPair[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((SettingPair[])(this.results[0])); + } + } + } + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetWindowsServicesCompletedEventHandler(object sender, GetWindowsServicesCompletedEventArgs e); diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/WebApplicationGalleryProxy.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/WebApplicationGalleryProxy.cs index 2d212305..5e40b991 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/WebApplicationGalleryProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/WebApplicationGalleryProxy.cs @@ -39,30 +39,39 @@ // // This source code was auto-generated by wsdl, Version=2.0.50727.1432. // -namespace WebsitePanel.EnterpriseServer { +namespace WebsitePanel.EnterpriseServer +{ using System.Diagnostics; using System.Web.Services; using System.ComponentModel; using System.Web.Services.Protocols; using System; using System.Xml.Serialization; - using WebsitePanel.Providers.ResultObjects; - using WebsitePanel.Providers.WebAppGallery; - using WebsitePanel.Providers.Common; + using WebsitePanel.Providers.ResultObjects; + using WebsitePanel.Providers.WebAppGallery; + using WebsitePanel.Providers.Common; /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] [System.Web.Services.WebServiceBindingAttribute(Name="esWebApplicationGallerySoap", Namespace="http://tempuri.org/")] [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResultObject))] public partial class esWebApplicationGallery : Microsoft.Web.Services3.WebServicesClientProtocol { + private System.Threading.SendOrPostCallback InitFeedsOperationCompleted; + + private System.Threading.SendOrPostCallback SetResourceLanguageOperationCompleted; + + private System.Threading.SendOrPostCallback GetGalleryLanguagesOperationCompleted; + private System.Threading.SendOrPostCallback GetGalleryApplicationsByServiceIdOperationCompleted; private System.Threading.SendOrPostCallback GetGalleryApplicationsOperationCompleted; + private System.Threading.SendOrPostCallback GetGalleryApplicationsFilteredOperationCompleted; + private System.Threading.SendOrPostCallback GetGalleryCategoriesOperationCompleted; private System.Threading.SendOrPostCallback GetGalleryApplicationDetailsOperationCompleted; @@ -75,15 +84,27 @@ namespace WebsitePanel.EnterpriseServer { /// public esWebApplicationGallery() { - this.Url = "http://localhost:1625/esWebApplicationGallery.asmx"; + this.Url = "http://localhost:9002/esWebApplicationGallery.asmx"; } + /// + public event InitFeedsCompletedEventHandler InitFeedsCompleted; + + /// + public event SetResourceLanguageCompletedEventHandler SetResourceLanguageCompleted; + + /// + public event GetGalleryLanguagesCompletedEventHandler GetGalleryLanguagesCompleted; + /// public event GetGalleryApplicationsByServiceIdCompletedEventHandler GetGalleryApplicationsByServiceIdCompleted; /// public event GetGalleryApplicationsCompletedEventHandler GetGalleryApplicationsCompleted; + /// + public event GetGalleryApplicationsFilteredCompletedEventHandler GetGalleryApplicationsFilteredCompleted; + /// public event GetGalleryCategoriesCompletedEventHandler GetGalleryCategoriesCompleted; @@ -99,6 +120,128 @@ namespace WebsitePanel.EnterpriseServer { /// public event GetGalleryApplicationStatusCompletedEventHandler GetGalleryApplicationStatusCompleted; + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/InitFeeds", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void InitFeeds(int packageId) { + this.Invoke("InitFeeds", new object[] { + packageId}); + } + + /// + public System.IAsyncResult BeginInitFeeds(int packageId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("InitFeeds", new object[] { + packageId}, callback, asyncState); + } + + /// + public void EndInitFeeds(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void InitFeedsAsync(int packageId) { + this.InitFeedsAsync(packageId, null); + } + + /// + public void InitFeedsAsync(int packageId, object userState) { + if ((this.InitFeedsOperationCompleted == null)) { + this.InitFeedsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInitFeedsOperationCompleted); + } + this.InvokeAsync("InitFeeds", new object[] { + packageId}, this.InitFeedsOperationCompleted, userState); + } + + private void OnInitFeedsOperationCompleted(object arg) { + if ((this.InitFeedsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.InitFeedsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetResourceLanguage", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void SetResourceLanguage(int packageId, string resourceLanguage) { + this.Invoke("SetResourceLanguage", new object[] { + packageId, + resourceLanguage}); + } + + /// + public System.IAsyncResult BeginSetResourceLanguage(int packageId, string resourceLanguage, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("SetResourceLanguage", new object[] { + packageId, + resourceLanguage}, callback, asyncState); + } + + /// + public void EndSetResourceLanguage(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void SetResourceLanguageAsync(int packageId, string resourceLanguage) { + this.SetResourceLanguageAsync(packageId, resourceLanguage, null); + } + + /// + public void SetResourceLanguageAsync(int packageId, string resourceLanguage, object userState) { + if ((this.SetResourceLanguageOperationCompleted == null)) { + this.SetResourceLanguageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetResourceLanguageOperationCompleted); + } + this.InvokeAsync("SetResourceLanguage", new object[] { + packageId, + resourceLanguage}, this.SetResourceLanguageOperationCompleted, userState); + } + + private void OnSetResourceLanguageOperationCompleted(object arg) { + if ((this.SetResourceLanguageCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.SetResourceLanguageCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetGalleryLanguages", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public GalleryLanguagesResult GetGalleryLanguages(int packageId) { + object[] results = this.Invoke("GetGalleryLanguages", new object[] { + packageId}); + return ((GalleryLanguagesResult)(results[0])); + } + + /// + public System.IAsyncResult BeginGetGalleryLanguages(int packageId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetGalleryLanguages", new object[] { + packageId}, callback, asyncState); + } + + /// + public GalleryLanguagesResult EndGetGalleryLanguages(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((GalleryLanguagesResult)(results[0])); + } + + /// + public void GetGalleryLanguagesAsync(int packageId) { + this.GetGalleryLanguagesAsync(packageId, null); + } + + /// + public void GetGalleryLanguagesAsync(int packageId, object userState) { + if ((this.GetGalleryLanguagesOperationCompleted == null)) { + this.GetGalleryLanguagesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryLanguagesOperationCompleted); + } + this.InvokeAsync("GetGalleryLanguages", new object[] { + packageId}, this.GetGalleryLanguagesOperationCompleted, userState); + } + + private void OnGetGalleryLanguagesOperationCompleted(object arg) { + if ((this.GetGalleryLanguagesCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetGalleryLanguagesCompleted(this, new GetGalleryLanguagesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + /// [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetGalleryApplicationsByServiceId", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] public GalleryApplicationsResult GetGalleryApplicationsByServiceId(int serviceId) { @@ -184,6 +327,50 @@ namespace WebsitePanel.EnterpriseServer { } } + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetGalleryApplicationsFiltered", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public GalleryApplicationsResult GetGalleryApplicationsFiltered(int packageId, string pattern) { + object[] results = this.Invoke("GetGalleryApplicationsFiltered", new object[] { + packageId, + pattern}); + return ((GalleryApplicationsResult)(results[0])); + } + + /// + public System.IAsyncResult BeginGetGalleryApplicationsFiltered(int packageId, string pattern, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetGalleryApplicationsFiltered", new object[] { + packageId, + pattern}, callback, asyncState); + } + + /// + public GalleryApplicationsResult EndGetGalleryApplicationsFiltered(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((GalleryApplicationsResult)(results[0])); + } + + /// + public void GetGalleryApplicationsFilteredAsync(int packageId, string pattern) { + this.GetGalleryApplicationsFilteredAsync(packageId, pattern, null); + } + + /// + public void GetGalleryApplicationsFilteredAsync(int packageId, string pattern, object userState) { + if ((this.GetGalleryApplicationsFilteredOperationCompleted == null)) { + this.GetGalleryApplicationsFilteredOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryApplicationsFilteredOperationCompleted); + } + this.InvokeAsync("GetGalleryApplicationsFiltered", new object[] { + packageId, + pattern}, this.GetGalleryApplicationsFilteredOperationCompleted, userState); + } + + private void OnGetGalleryApplicationsFilteredOperationCompleted(object arg) { + if ((this.GetGalleryApplicationsFilteredCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetGalleryApplicationsFilteredCompleted(this, new GetGalleryApplicationsFilteredCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + /// [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetGalleryCategories", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] public GalleryCategoriesResult GetGalleryCategories(int packageId) { @@ -315,24 +502,26 @@ namespace WebsitePanel.EnterpriseServer { /// [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/Install", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public StringResultObject Install(int packageId, string webAppId, string siteName, string virtualDir, DeploymentParameter[] parameters) { + public StringResultObject Install(int packageId, string webAppId, string siteName, string virtualDir, DeploymentParameter[] parameters, string languageId) { object[] results = this.Invoke("Install", new object[] { packageId, webAppId, siteName, virtualDir, - parameters}); + parameters, + languageId}); return ((StringResultObject)(results[0])); } /// - public System.IAsyncResult BeginInstall(int packageId, string webAppId, string siteName, string virtualDir, DeploymentParameter[] parameters, System.AsyncCallback callback, object asyncState) { + public System.IAsyncResult BeginInstall(int packageId, string webAppId, string siteName, string virtualDir, DeploymentParameter[] parameters, string languageId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("Install", new object[] { packageId, webAppId, siteName, virtualDir, - parameters}, callback, asyncState); + parameters, + languageId}, callback, asyncState); } /// @@ -342,12 +531,12 @@ namespace WebsitePanel.EnterpriseServer { } /// - public void InstallAsync(int packageId, string webAppId, string siteName, string virtualDir, DeploymentParameter[] parameters) { - this.InstallAsync(packageId, webAppId, siteName, virtualDir, parameters, null); + public void InstallAsync(int packageId, string webAppId, string siteName, string virtualDir, DeploymentParameter[] parameters, string languageId) { + this.InstallAsync(packageId, webAppId, siteName, virtualDir, parameters, languageId, null); } /// - public void InstallAsync(int packageId, string webAppId, string siteName, string virtualDir, DeploymentParameter[] parameters, object userState) { + public void InstallAsync(int packageId, string webAppId, string siteName, string virtualDir, DeploymentParameter[] parameters, string languageId, object userState) { if ((this.InstallOperationCompleted == null)) { this.InstallOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInstallOperationCompleted); } @@ -356,7 +545,8 @@ namespace WebsitePanel.EnterpriseServer { webAppId, siteName, virtualDir, - parameters}, this.InstallOperationCompleted, userState); + parameters, + languageId}, this.InstallOperationCompleted, userState); } private void OnInstallOperationCompleted(object arg) { @@ -416,33 +606,46 @@ namespace WebsitePanel.EnterpriseServer { } } - - - - - - - - - - - - - - - - - - - - + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void InitFeedsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void SetResourceLanguageCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetGalleryLanguagesCompletedEventHandler(object sender, GetGalleryLanguagesCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetGalleryLanguagesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetGalleryLanguagesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public GalleryLanguagesResult Result { + get { + this.RaiseExceptionIfNecessary(); + return ((GalleryLanguagesResult)(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationsByServiceIdCompletedEventHandler(object sender, GetGalleryApplicationsByServiceIdCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationsByServiceIdCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -464,11 +667,11 @@ namespace WebsitePanel.EnterpriseServer { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationsCompletedEventHandler(object sender, GetGalleryApplicationsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -490,11 +693,37 @@ namespace WebsitePanel.EnterpriseServer { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetGalleryApplicationsFilteredCompletedEventHandler(object sender, GetGalleryApplicationsFilteredCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetGalleryApplicationsFilteredCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetGalleryApplicationsFilteredCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public GalleryApplicationsResult Result { + get { + this.RaiseExceptionIfNecessary(); + return ((GalleryApplicationsResult)(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryCategoriesCompletedEventHandler(object sender, GetGalleryCategoriesCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryCategoriesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -516,11 +745,11 @@ namespace WebsitePanel.EnterpriseServer { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationDetailsCompletedEventHandler(object sender, GetGalleryApplicationDetailsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationDetailsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -542,11 +771,11 @@ namespace WebsitePanel.EnterpriseServer { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationParamsCompletedEventHandler(object sender, GetGalleryApplicationParamsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationParamsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -568,11 +797,11 @@ namespace WebsitePanel.EnterpriseServer { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void InstallCompletedEventHandler(object sender, InstallCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class InstallCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -594,11 +823,11 @@ namespace WebsitePanel.EnterpriseServer { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationStatusCompletedEventHandler(object sender, GetGalleryApplicationStatusCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationStatusCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/OperatingSystems/OperatingSystemController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/OperatingSystems/OperatingSystemController.cs index 6f8320e3..db431763 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/OperatingSystems/OperatingSystemController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/OperatingSystems/OperatingSystemController.cs @@ -39,6 +39,7 @@ using WebsitePanel.Server; using WebsitePanel.Providers; using WebsitePanel.Providers.OS; using OS = WebsitePanel.Providers.OS; +using System.Collections; namespace WebsitePanel.EnterpriseServer { @@ -406,6 +407,67 @@ namespace WebsitePanel.EnterpriseServer } #endregion + #region Web Platform Installer + + public static void InitWPIFeeds(int serverId, string feedUrls) + { + GetServerService(serverId).InitWPIFeeds(feedUrls); + } + + public static WPITab[] GetWPITabs(int serverId) + { + return GetServerService(serverId).GetWPITabs(); + } + + public static WPIKeyword[] GetWPIKeywords(int serverId) + { + return GetServerService(serverId).GetWPIKeywords(); + } + + public static WPIProduct[] GetWPIProducts(int serverId, string tabId, string keywordId) + { + return GetServerService(serverId).GetWPIProducts(tabId, keywordId); + } + + public static WPIProduct[] GetWPIProductsFiltered(int serverId, string keywordId) + { + return GetServerService(serverId).GetWPIProductsFiltered(keywordId); + } + + + + public static WPIProduct[] GetWPIProductsWithDependencies(int serverId, string[] products) + { + return GetServerService(serverId).GetWPIProductsWithDependencies(products); + } + public static void InstallWPIProducts(int serverId, string[] products) + { + GetServerService(serverId).InstallWPIProducts(products); + } + + public static void CancelInstallWPIProducts(int serverId) + { + GetServerService(serverId).CancelInstallWPIProducts(); + } + + public static string GetWPIStatus(int serverId) + { + return GetServerService(serverId).GetWPIStatus(); + } + + public static string WpiGetLogFileDirectory(int serverId) + { + return GetServerService(serverId).WpiGetLogFileDirectory(); + } + + public static SettingPair[] WpiGetLogsInDirectory(int serverId, string Path) + { + return GetServerService(serverId).WpiGetLogsInDirectory(Path); + } + + + #endregion + #region Event Viewer public static string[] GetLogNames(int serverId) { @@ -684,6 +746,7 @@ namespace WebsitePanel.EnterpriseServer return 0; } + #endregion } } diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/WebAppGallery/WebAppGalleryController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/WebAppGallery/WebAppGalleryController.cs index c90c79d1..a2a0fd24 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/WebAppGallery/WebAppGalleryController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/Code/WebAppGallery/WebAppGalleryController.cs @@ -62,6 +62,88 @@ namespace WebsitePanel.EnterpriseServer public const string GET_GALLERY_CATEGORIES_TASK = "GET_GALLERY_CATEGORIES_TASK"; #endregion + private static string[] getFeedsFromSettings(int packageId) + { + int serviceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Web); + + return getFeedsFromSettingsByServiceId(serviceId); + + } + + private static string[] getFeedsFromSettingsByServiceId(int serviceId) + { + StringDictionary serviceSettings = ServerController.GetServiceSettings(serviceId); + + List arFeeds = new List(); + + if (Utils.ParseBool(serviceSettings["FeedEnableMicrosoft"], true)) + { + arFeeds.Add("https://www.microsoft.com/web/webpi/3.0/WebProductList.xml"); + } + + if (Utils.ParseBool(serviceSettings["FeedEnableHelicon"], true)) + { + arFeeds.Add("http://www.helicontech.com/zoo/feed/wsp"); + } + + string additionalFeeds = serviceSettings["FeedUrls"]; + if (!string.IsNullOrEmpty(additionalFeeds)) + { + arFeeds.AddRange(additionalFeeds.Split(';')); + } + + return arFeeds.ToArray(); + } + public static void InitFeedsByServiceId(int UserId, int serviceId) + { + string[] feeds = getFeedsFromSettingsByServiceId(serviceId); + + WebServer webServer = WebServerController.GetWebServer(serviceId); + webServer.InitFeeds(UserId, feeds); + } + + + + public static void InitFeeds(int UserId, int packageId) + { + string[] feeds = getFeedsFromSettings(packageId); + + // Set feeds + WebServer webServer = GetAssociatedWebServer(packageId); + webServer.InitFeeds(UserId, feeds); + + } + + public static void SetResourceLanguage(int packageId, string resourceLanguage) + { + GetAssociatedWebServer(packageId).SetResourceLanguage(SecurityContext.User.UserId,resourceLanguage); + } + + + public static GalleryLanguagesResult GetGalleryLanguages(int packageId) + { + GalleryLanguagesResult result; + + try + { + WebServer webServer = GetAssociatedWebServer(packageId); + result = webServer.GetGalleryLanguages(SecurityContext.User.UserId); + + if (!result.IsSuccess) + return Error(result, GalleryErrors.GetLanguagesError); + } + catch (Exception ex) + { + return Error(GalleryErrors.GetLanguagesError, ex.Message); + } + finally + { + } + // + return result; + + } + public static GalleryCategoriesResult GetGalleryCategories(int packageId) { GalleryCategoriesResult result; @@ -77,7 +159,7 @@ namespace WebsitePanel.EnterpriseServer return Error(GalleryErrors.MsDeployIsNotInstalled); // get categories - result = webServer.GetGalleryCategories(); + result = webServer.GetGalleryCategories(SecurityContext.User.UserId); if (!result.IsSuccess) return Error(result, GalleryErrors.GetCategoriesError); @@ -114,7 +196,7 @@ namespace WebsitePanel.EnterpriseServer return Error(GalleryErrors.MsDeployIsNotInstalled); // get applications - result = webServer.GetGalleryApplications(String.Empty); + result = webServer.GetGalleryApplications(SecurityContext.User.UserId,String.Empty); if (!result.IsSuccess) return Error(result, GalleryErrors.GetApplicationsError); @@ -132,7 +214,7 @@ namespace WebsitePanel.EnterpriseServer return result; } - public static GalleryApplicationsResult GetGalleryApplications(int packageId, string categoryId) + public static GalleryApplicationsResult GetGalleryApplications(int packageId, string categoryId) { GalleryApplicationsResult result; // @@ -146,7 +228,7 @@ namespace WebsitePanel.EnterpriseServer return Error(GalleryErrors.MsDeployIsNotInstalled); // get applications - result = webServer.GetGalleryApplications(categoryId); + result = webServer.GetGalleryApplications(SecurityContext.User.UserId,categoryId); if (!result.IsSuccess) return Error(result, GalleryErrors.GetApplicationsError); @@ -189,20 +271,8 @@ namespace WebsitePanel.EnterpriseServer // || MatchMenaltoGalleryApp(x, appsFilter.ToArray()))); { - int userId = SecurityContext.User.UserId; - // - SecurityContext.SetThreadSupervisorPrincipal(); - // - string[] filteredApps = GetServiceAppsCatalogFilter(packageId); - // - if (filteredApps != null) - { - result.Value = new List(Array.FindAll(result.Value.ToArray(), - x => !Array.Exists(filteredApps, - z => z.Equals(x.Id, StringComparison.InvariantCultureIgnoreCase)))); - } - // - SecurityContext.SetThreadPrincipal(userId); + FilterResultApplications(packageId, result); + } } catch (Exception ex) @@ -218,6 +288,61 @@ namespace WebsitePanel.EnterpriseServer return result; } + private static void FilterResultApplications(int packageId, GalleryApplicationsResult result) + { + int userId = SecurityContext.User.UserId; + // + SecurityContext.SetThreadSupervisorPrincipal(); + // + string[] filteredApps = GetServiceAppsCatalogFilter(packageId); + // + if (filteredApps != null) + { + result.Value = new List(Array.FindAll(result.Value.ToArray(), + x => !Array.Exists(filteredApps, + z => z.Equals(x.Id, StringComparison.InvariantCultureIgnoreCase)))); + } + // + SecurityContext.SetThreadPrincipal(userId); + } + + public static GalleryApplicationsResult GetGalleryApplicationsFiltered(int packageId, string pattern) + { + GalleryApplicationsResult result; + // + try + { + TaskManager.StartTask(TASK_MANAGER_SOURCE, GET_GALLERY_APPS_TASK); + + // check if WAG is installed + WebServer webServer = GetAssociatedWebServer(packageId); + if (!webServer.IsMsDeployInstalled()) + return Error(GalleryErrors.MsDeployIsNotInstalled); + + // get applications + result = webServer.GetGalleryApplicationsFiltered(SecurityContext.User.UserId,pattern); + + FilterResultApplications(packageId, result); + + if (!result.IsSuccess) + return Error(result, GalleryErrors.GetApplicationsError); + + } + catch (Exception ex) + { + TaskManager.WriteError(ex); + return Error(GalleryErrors.GeneralError, ex.Message); + } + finally + { + TaskManager.CompleteTask(); + } + // + return result; + + } + + internal static bool MatchParticularAppDependency(Dependency dependency, string[] dependencyIds) { List nested = null; @@ -311,7 +436,7 @@ namespace WebsitePanel.EnterpriseServer return Error(GalleryErrors.MsDeployIsNotInstalled); // get application details - result = webServer.GetGalleryApplication(applicationId); + result = webServer.GetGalleryApplication(SecurityContext.User.UserId,applicationId); if (!result.IsSuccess) return Error(result, GalleryErrors.GetApplicationError); @@ -396,7 +521,7 @@ namespace WebsitePanel.EnterpriseServer return Error(GalleryErrors.MsDeployIsNotInstalled); // get parameters - result = webServer.GetGalleryApplicationParameters(webAppId); + result = webServer.GetGalleryApplicationParameters(SecurityContext.User.UserId,webAppId); if (!result.IsSuccess) return Error(result, GalleryErrors.GetApplicationParametersError); @@ -414,9 +539,10 @@ namespace WebsitePanel.EnterpriseServer return result; } - public static StringResultObject Install(int packageId, string webAppId, string siteName, string virtualDir, List parameters) + public static StringResultObject Install(int packageId, string webAppId, string siteName, string virtualDir, List parameters, string languageId ) { StringResultObject result = new StringResultObject(); + int originalUserId = SecurityContext.User.UserId; try { @@ -455,7 +581,7 @@ namespace WebsitePanel.EnterpriseServer return Error(GalleryErrors.WebSiteNotFound, siteName); // get application pack details - GalleryApplicationResult app = webServer.GetGalleryApplication(webAppId); + GalleryApplicationResult app = webServer.GetGalleryApplication(SecurityContext.User.UserId,webAppId); if (!app.IsSuccess) return Error(app, GalleryErrors.GeneralError); if (app.Value == null) @@ -643,7 +769,7 @@ namespace WebsitePanel.EnterpriseServer } // install application - result = webServer.InstallGalleryApplication(webAppId, parameters.ToArray()); + result = webServer.InstallGalleryApplication(originalUserId, webAppId, parameters.ToArray(), languageId); #region Rollback in case of failure // Rollback - remove resources have been created previously @@ -665,12 +791,25 @@ namespace WebsitePanel.EnterpriseServer #region Update Web Application settings WebVirtualDirectory iisApp = null; - if(String.IsNullOrEmpty(virtualDir)) - // load web site - iisApp = WebServerController.GetWebSite(packageId, siteName); - else - // load virtual directory - iisApp = WebServerController.GetVirtualDirectory(webSite.Id, virtualDir); + if (String.IsNullOrEmpty(virtualDir)) + // load web site + iisApp = WebServerController.GetWebSite(packageId, siteName); + else + { + try + { + // load virtual directory + iisApp = WebServerController.GetVirtualDirectory(webSite.Id, virtualDir); + } + catch (Exception ex) + { + throw new Exception( + string.Format( + "{0} on WebServerController.GetVirtualDirectory(\"{1}\", \"{2}\")", + ex.GetType(), webSite.Id, virtualDir), + ex); + } + } // put correct extensions if ((app.Value.WellKnownDependencies & GalleryApplicationWellKnownDependency.AspNet20) == GalleryApplicationWellKnownDependency.AspNet20) @@ -714,7 +853,10 @@ namespace WebsitePanel.EnterpriseServer TaskManager.WriteError(ex); // exit with error code - return Error(GalleryErrors.GeneralError); + //return Error(GalleryErrors.GeneralError); + + result.AddError(GalleryErrors.GeneralError, ex); + return result; } finally { @@ -746,11 +888,11 @@ namespace WebsitePanel.EnterpriseServer if (!webServer.IsMsDeployInstalled()) return Error(GalleryErrors.MsDeployIsNotInstalled); // - GalleryWebAppStatus appStatus = webServer.GetGalleryApplicationStatus(webAppId); + GalleryWebAppStatus appStatus = webServer.GetGalleryApplicationStatus(SecurityContext.User.UserId,webAppId); // if (appStatus == GalleryWebAppStatus.NotDownloaded) { - GalleryApplicationResult appResult = webServer.GetGalleryApplication(webAppId); + GalleryApplicationResult appResult = webServer.GetGalleryApplication(SecurityContext.User.UserId,webAppId); // Start app download in new thread WebAppGalleryAsyncWorker async = new WebAppGalleryAsyncWorker(); async.GalleryApp = appResult.Value; @@ -897,7 +1039,7 @@ namespace WebsitePanel.EnterpriseServer // TaskManager.Write("Application package download has been started"); // - GalleryWebAppStatus appStatus = webServer.DownloadGalleryApplication(WebAppId); + GalleryWebAppStatus appStatus = webServer.DownloadGalleryApplication(SecurityContext.User.UserId,WebAppId); // if (appStatus == GalleryWebAppStatus.Failed) { diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esServers.asmx.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esServers.asmx.cs index 1df94af6..05f403ee 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esServers.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esServers.asmx.cs @@ -41,6 +41,7 @@ using Microsoft.Web.Services3; using WebsitePanel.Providers.DNS; using WebsitePanel.Server; using WebsitePanel.Providers.ResultObjects; +using WebsitePanel.Providers; namespace WebsitePanel.EnterpriseServer { @@ -663,6 +664,108 @@ namespace WebsitePanel.EnterpriseServer } #endregion + + #region Web Platform Installer + + [WebMethod] + public void InitWPIFeeds(int serverId) + { + var wpiSettings = SystemController.GetSystemSettings(SystemSettings.WPI_SETTINGS); + + + List arFeeds = new List(); + + if (Utils.ParseBool(wpiSettings["FeedEnableMicrosoft"] ,true)) + { + arFeeds.Add( "https://www.microsoft.com/web/webpi/3.0/WebProductList.xml" ); + } + + if (Utils.ParseBool(wpiSettings["FeedEnableHelicon"] ,true)) + { + arFeeds.Add( "http://www.helicontech.com/zoo/feed/wsp" ); + } + + string additionalFeeds = wpiSettings["FeedUrls"]; + if (!string.IsNullOrEmpty(additionalFeeds)) + { + arFeeds.AddRange(additionalFeeds.Split(';')); + } + + OperatingSystemController.InitWPIFeeds(serverId, string.Join(";", arFeeds)); + + } + + [WebMethod] + public WPITab[] GetWPITabs(int serverId) + { + InitWPIFeeds(serverId); + return OperatingSystemController.GetWPITabs(serverId); + } + + [WebMethod] + public WPIKeyword[] GetWPIKeywords(int serverId) + { + InitWPIFeeds(serverId); + return OperatingSystemController.GetWPIKeywords(serverId); + } + + [WebMethod] + public WPIProduct[] GetWPIProducts(int serverId, string tabId, string keywordId) + { + InitWPIFeeds(serverId); + return OperatingSystemController.GetWPIProducts(serverId, tabId, keywordId); + } + + [WebMethod] + public WPIProduct[] GetWPIProductsFiltered(int serverId, string keywordId) + { + InitWPIFeeds(serverId); + return OperatingSystemController.GetWPIProductsFiltered(serverId, keywordId); + } + + + [WebMethod] + public WPIProduct[] GetWPIProductsWithDependencies(int serverId, string[] products) + { + InitWPIFeeds(serverId); + return OperatingSystemController.GetWPIProductsWithDependencies(serverId, products); + } + + [WebMethod] + public void InstallWPIProducts(int serverId, string[] products) + { + InitWPIFeeds(serverId); + OperatingSystemController.InstallWPIProducts(serverId, products); + } + + [WebMethod] + public void CancelInstallWPIProducts(int serviceId) + { + OperatingSystemController.CancelInstallWPIProducts(serviceId); + } + + + [WebMethod] + public string GetWPIStatus(int serverId) + { + return OperatingSystemController.GetWPIStatus(serverId); + } + + [WebMethod] + public string WpiGetLogFileDirectory(int serverId) + { + return OperatingSystemController.WpiGetLogFileDirectory(serverId); + } + + [WebMethod] + public SettingPair[] WpiGetLogsInDirectory(int serverId, string Path) + { + return OperatingSystemController.WpiGetLogsInDirectory(serverId, Path); + } + #endregion + + + #region Windows Services [WebMethod] public WindowsService[] GetWindowsServices(int serverId) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esWebApplicationGallery.asmx.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esWebApplicationGallery.asmx.cs index 4bee3f7a..1c412911 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esWebApplicationGallery.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esWebApplicationGallery.asmx.cs @@ -43,45 +43,81 @@ namespace WebsitePanel.EnterpriseServer [System.ComponentModel.ToolboxItem(false)] public class esWebApplicationGallery : System.Web.Services.WebService { + [WebMethod] + public void InitFeeds(int packageId) + { + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); + } + + [WebMethod] + public void SetResourceLanguage(int packageId, string resourceLanguage) + { + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); + WebAppGalleryController.SetResourceLanguage(packageId, resourceLanguage); + } + + + [WebMethod] + public GalleryLanguagesResult GetGalleryLanguages(int packageId) + { + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); + return WebAppGalleryController.GetGalleryLanguages(packageId); + } + + [WebMethod] public GalleryApplicationsResult GetGalleryApplicationsByServiceId(int serviceId) { + WebAppGalleryController.InitFeedsByServiceId(SecurityContext.User.UserId, serviceId); return WebAppGalleryController.GetGalleryApplicationsByServiceId(serviceId); } [WebMethod] public GalleryApplicationsResult GetGalleryApplications(int packageId, string categoryId) { - return WebAppGalleryController.GetGalleryApplications(packageId, categoryId); + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); + return WebAppGalleryController.GetGalleryApplications(packageId, categoryId); + } + + [WebMethod] + public GalleryApplicationsResult GetGalleryApplicationsFiltered(int packageId, string pattern) + { + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); + return WebAppGalleryController.GetGalleryApplicationsFiltered(packageId, pattern); } [WebMethod] public GalleryCategoriesResult GetGalleryCategories(int packageId) { + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); return WebAppGalleryController.GetGalleryCategories(packageId); } [WebMethod] public GalleryApplicationResult GetGalleryApplicationDetails(int packageId, string applicationId) { + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); return WebAppGalleryController.GetGalleryApplicationDetails(packageId, applicationId); } [WebMethod] public DeploymentParametersResult GetGalleryApplicationParams(int packageId, string applicationId) { + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); return WebAppGalleryController.GetGalleryApplicationParams(packageId, applicationId); } [WebMethod] - public StringResultObject Install(int packageId, string webAppId, string siteName, string virtualDir, List parameters) + public StringResultObject Install(int packageId, string webAppId, string siteName, string virtualDir, List parameters, string languageId) { - return WebAppGalleryController.Install(packageId, webAppId, siteName, virtualDir, parameters); + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); + return WebAppGalleryController.Install(packageId, webAppId, siteName, virtualDir, parameters, languageId); } [WebMethod(Description="Returns Web Application Gallery application status, such as Downloaded, Downloading, Failed or NotDownloaded. Throws an ApplicationException if WAG module is not available on the target server.")] public GalleryWebAppStatus GetGalleryApplicationStatus(int packageId, string webAppId) { + WebAppGalleryController.InitFeeds(SecurityContext.User.UserId, packageId); return WebAppGalleryController.GetGalleryApplicationStatus(packageId, webAppId); } } diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/Common/WPIEntries.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/Common/WPIEntries.cs new file mode 100644 index 00000000..a61106c7 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/Common/WPIEntries.cs @@ -0,0 +1,214 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace WebsitePanel.Server +{ + public class WPIProduct + { + private string productId; + private string logo; + private string summary; + private string title; + private string link; + private string version; + private string eulaUrl; + private string downloadedLocation; + private string longDescription; + private bool isInstalled; + private int fileSize; + private DateTime published; + private string author; + private string authorUri; + + public WPIProduct() + { + } + + public string Logo + { + get { return this.logo; } + set { this.logo = value; } + } + + public string ProductId + { + get { return this.productId; } + set { this.productId = value; } + } + + + public string Summary + { + get { return this.summary; } + set { this.summary = value; } + } + + public string Title + { + get { return this.title; } + set { this.title = value; } + } + + public string Link + { + get { return this.link; } + set { this.link = value; } + } + + public bool IsInstalled + { + get { return this.isInstalled; } + set { this.isInstalled = value; } + } + + public string Version + { + get { return this.version; } + set { this.version = value; } + } + + public string EulaUrl + { + get { return this.eulaUrl; } + set { this.eulaUrl = value; } + } + + public string DownloadedLocation + { + get { return this.downloadedLocation; } + set { this.downloadedLocation = value; } + } + + public int FileSize + { + get { return this.fileSize; } + set { this.fileSize = value; } + } + + public string LongDescription + { + get { return this.longDescription; } + set { this.longDescription = value; } + } + + public DateTime Published + { + get { return this.published; } + set { this.published = value; } + } + + public string Author + { + get { return author; } + set { author = value; } + } + + public string AuthorUri + { + get { return authorUri; } + set { authorUri = value; } + } + } + + public class WPITab + { + private string description; + private bool fromCustomFeed; + private string id; + private string name; + + public WPITab() + { + + } + + public WPITab(string id, string name) + { + this.id = id; + this.name = name; + } + + public string Description + { + get { return this.description; } + set { this.description = value; } + } + + public bool FromCustomFeed + { + get { return this.fromCustomFeed; } + set { this.fromCustomFeed = value; } + } + + public string Id + { + get { return this.id; } + set { this.id = value; } + } + + public string Name + { + get { return this.name; } + set { this.name = value; } + } + } + + public class WPIKeyword + { + private string id; + private string text; + + public WPIKeyword() + { + + } + + public WPIKeyword(string id, string text) + { + this.id = id; + this.text = text; + } + + public string Id + { + get { return this.id; } + set { this.id = value; } + } + + public string Text + { + get { return this.text; } + set { this.text = value; } + } + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/ResultObjects/ResultObject.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/ResultObjects/ResultObject.cs index 059724e5..e78c84af 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/ResultObjects/ResultObject.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/ResultObjects/ResultObject.cs @@ -57,7 +57,7 @@ namespace WebsitePanel.Providers.Common public void AddError(string errorCode, Exception ex) { if(ex != null) - errorCode += ":" + ex.Message; + errorCode += ":" + ex.Message + "; " + ex.StackTrace; this.ErrorCodes.Add(errorCode); this.IsSuccess = false; diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/ResultObjects/WebAppGallery.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/ResultObjects/WebAppGallery.cs index a0977b61..62f7e55f 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/ResultObjects/WebAppGallery.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/ResultObjects/WebAppGallery.cs @@ -47,4 +47,8 @@ namespace WebsitePanel.Providers.ResultObjects public class DeploymentParametersResult : ValueResultObject> { } + + public class GalleryLanguagesResult : ValueResultObject> + { + } } \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/Web/IWebServer.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/Web/IWebServer.cs index 48bc62cc..500d303a 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/Web/IWebServer.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/Web/IWebServer.cs @@ -119,14 +119,18 @@ namespace WebsitePanel.Providers.Web // web app gallery + void InitFeeds(int UserId, string[] feeds); + void SetResourceLanguage(int UserId, string resourceLanguage); bool IsMsDeployInstalled(); - GalleryCategoriesResult GetGalleryCategories(); - GalleryApplicationsResult GetGalleryApplications(string categoryId); - GalleryApplicationResult GetGalleryApplication(string id); - GalleryWebAppStatus GetGalleryApplicationStatus(string id); - GalleryWebAppStatus DownloadGalleryApplication(string id); - DeploymentParametersResult GetGalleryApplicationParameters(string id); - StringResultObject InstallGalleryApplication(string id, List updatedValues); + GalleryLanguagesResult GetGalleryLanguages(int UserId); + GalleryCategoriesResult GetGalleryCategories(int UserId); + GalleryApplicationsResult GetGalleryApplications(int UserId, string categoryId); + GalleryApplicationsResult GetGalleryApplicationsFiltered(int UserId, string pattern); + GalleryApplicationResult GetGalleryApplication(int UserId, string id); + GalleryWebAppStatus GetGalleryApplicationStatus(int UserId, string id); + GalleryWebAppStatus DownloadGalleryApplication(int UserId, string id); + DeploymentParametersResult GetGalleryApplicationParameters(int UserId, string id); + StringResultObject InstallGalleryApplication(int UserId, string id, List updatedValues, string languageId); // void GrantWebManagementAccess(string siteId, string accountName, string accountPassword); diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/DeploymentParameter.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/DeploymentParameter.cs index 12ed980a..5306c53d 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/DeploymentParameter.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/DeploymentParameter.cs @@ -41,37 +41,48 @@ namespace WebsitePanel.Providers.WebAppGallery } [Flags] - public enum DeploymentParameterWellKnownTag + public enum DeploymentParameterWellKnownTag : long { - None = 0, - AppHostConfig = 1, - AppPoolConfig = 2, - Boolean = 4, - ComObject32 = 8, - ComObject64 = 16, - DBAdminPassword = 32, - DBAdminUserName = 64, - DBConnectionString = 128, - DBName = 256, - DBServer = 512, - DBUserName = 1024, - DBUserPassword = 2048, - FlatFile = 4096, - Hidden = 8192, - IisApp = 16384, - MetaKey = 32768, - MySql = 65536, - MySqlConnectionString = 131072, - New = 262144, - RegKey = 524288, - SetAcl = 1048576, - Sql = 2097152, - SqLite = 4194304, - SqlConnectionString = 8388608, - Password = 16777216, - PhysicalPath = 33554432, - VistaDB = 67108864, - Validate = 134217728, + None = 0L, + AppHostConfig = 1L, + AppPoolConfig = 2L, + Boolean = 4L, + ComObject32 = 8L, + ComObject64 = 16L, + DBAdminPassword = 32L, + DBAdminUserName = 64L, + DBConnectionString = 128L, + DBName = 256L, + DBServer = 512L, + DBUserName = 1024L, + DBUserPassword = 2048L, + FlatFile = 4096L, + Hidden = 8192L, + IisApp = 16384L, + MetaKey = 32768L, + MySql = 65536L, + MySqlConnectionString = 131072L, + New = 262144L, + RegKey = 524288L, + SetAcl = 1048576L, + Sql = 2097152L, + SqLite = 4194304L, + SqlConnectionString = 8388608L, + Password = 16777216L, + PhysicalPath = 33554432L, + VistaDB = 67108864L, + Validate = 134217728L, + SqLiteConnectionString = 268435456L, + SqlCE = 536870912L, + NoStore = 1073741824L, + AppURL = 2147483648L, + NoProtocol = 4294967296L, + DBUserConnectionString = 8589934592L, + DBAdminConnectionString = 17179869184L, + WebPIApplicationID = 34359738368L, + Ignore = 68719476736L, + AutoGenerated = 137438953472L, + SingleLineConnectionString = 274877906944L, } [Serializable] diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/GalleryApplication.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/GalleryApplication.cs index 3075737b..882b4c2e 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/GalleryApplication.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/GalleryApplication.cs @@ -203,7 +203,7 @@ namespace WebsitePanel.Providers.WebAppGallery } } - [XmlIgnore] + [XmlIgnore] public string Size { get @@ -217,6 +217,10 @@ namespace WebsitePanel.Providers.WebAppGallery } } + [XmlElement(ElementName = "installerFileSize", Namespace = "http://www.w3.org/2005/Atom")] + public int InstallerFileSize { get; set; } + + public string AuthorName { get { return Author.Name; } } diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/GalleryErrors.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/GalleryErrors.cs index 528b1a54..44f14937 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/GalleryErrors.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebAppGallery/GalleryErrors.cs @@ -53,6 +53,9 @@ namespace WebsitePanel.Providers.WebAppGallery public const string MsDeployIsNotInstalled = "MsDeployIsNotInstalled"; public const string GeneralError = "GeneralError"; // + exception message + // Languages + public const string GetLanguagesError = "GetLanguagesError"; + // Categories public const string GetCategoriesError = "GetCategoriesError"; diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebsitePanel.Providers.Base.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebsitePanel.Providers.Base.csproj index d5f41672..c14f4912 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebsitePanel.Providers.Base.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebsitePanel.Providers.Base.csproj @@ -74,6 +74,7 @@ + diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/WebsitePanel.Providers.Database.MySQL.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/WebsitePanel.Providers.Database.MySQL.csproj index 74fa14c7..5dda564e 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/WebsitePanel.Providers.Database.MySQL.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/WebsitePanel.Providers.Database.MySQL.csproj @@ -57,7 +57,7 @@ False - ..\..\..\..\..\Program Files (x86)\MySQL\Connector NET 6.3.7\Assemblies\v2.0\MySql.Data.dll + ..\..\Lib\References\MySQL\MySql.Data.dll diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/IIs70.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/IIs70.cs index b80bc76c..b8a89893 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/IIs70.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/IIs70.cs @@ -59,6 +59,7 @@ using WebsitePanel.Providers.Web.WebObjects; using WebsitePanel.Providers.Web.Iis.Common; using WebsitePanel.Providers.Web.Iis; using Ionic.Zip; +using WebsitePanel.Providers.WebAppGallery; using WebsitePanel.Server.Utils; using WebsitePanel.Providers.Web.Delegation; @@ -3176,7 +3177,7 @@ namespace WebsitePanel.Providers.Web public const string WDeployAppPoolConfigEditor = "WDeployAppPoolConfigEditor"; - private void SetupWebDeployPublishingOnServer(List messages) + private void SetupWebDeployPublishingOnServer(List messages) { if (IsWebDeployInstalled() == false || String.IsNullOrEmpty(ProviderSettings[WDeployEnabled])) @@ -4026,5 +4027,11 @@ namespace WebsitePanel.Providers.Web return sslObjectService.CheckCertificate(webSite); } #endregion + + #region Web Platform Installer Application Gallery + + // moved down to IIs60 + + #endregion } } diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/WebsitePanel.Providers.Web.IIs70.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/WebsitePanel.Providers.Web.IIs70.csproj index a99e0d31..370f612d 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/WebsitePanel.Providers.Web.IIs70.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/WebsitePanel.Providers.Web.IIs70.csproj @@ -59,6 +59,7 @@ False ..\..\Lib\Ionic.Zip.Reduced.dll + False ..\..\Lib\References\Microsoft\Microsoft.Web.Administration.dll @@ -67,6 +68,10 @@ False ..\..\Lib\References\Microsoft\Microsoft.Web.Management.dll + + False + ..\..\Lib\Microsoft.Web.PlatformInstaller.dll + diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/IIs60.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/IIs60.cs index 8ba1570a..461a5344 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/IIs60.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/IIs60.cs @@ -43,6 +43,7 @@ using System.IO; using Microsoft.Win32; using Microsoft.Web.Deployment; using WebsitePanel.Providers.HostedSolution; +using WebsitePanel.Providers.Web.WPIWebApplicationGallery; using WebsitePanel.Server.Utils; using WebsitePanel.Providers.OS; using WebsitePanel.Providers.Utils; @@ -283,7 +284,7 @@ namespace WebsitePanel.Providers.Web get { string ret = ProviderSettings["GalleryXmlFeedUrl"]; - if (string.IsNullOrEmpty(ret)) + if (String.IsNullOrEmpty(ret)) ret = WebApplicationGallery.WAG_DEFAULT_FEED_URL; return ret; } @@ -3386,246 +3387,209 @@ namespace WebsitePanel.Providers.Web return IsIISInstalled(); } - #region Microsoft Web Application Gallery + + #region Microsoft Web Application Gallery - public GalleryCategoriesResult GetGalleryCategories() - { - GalleryCategoriesResult result = new GalleryCategoriesResult(); + private const string MS_DEPLOY_ASSEMBLY_NAME = "Microsoft.Web.Deployment"; + private const string WPI_INSTANCE_VIEWER = "viewer"; + private const string WPI_INSTANCE_INSTALLER = "installer"; - try - { - WebApplicationGallery module = new WebApplicationGallery(GalleryXmlFeedUrl); - // - result.Value = module.GetCategories(); - result.IsSuccess = true; - } - catch (Exception ex) - { - result.IsSuccess = false; - result.AddError(GalleryErrors.ProcessingFeedXMLError, ex); - } - // - return result; - } + public void InitFeeds(int UserId, string[] feeds) + { + //need to call InitFeeds() before any operation with WPIApplicationGallery() + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_VIEWER); + module.InitFeeds(UserId, feeds); + } - public GalleryApplicationsResult GetGalleryApplications(string categoryId) - { - GalleryApplicationsResult result = new GalleryApplicationsResult(); + public void SetResourceLanguage(int UserId, string resourceLanguage) + { + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_VIEWER); + module.SetResourceLanguage(UserId, resourceLanguage); + } - try - { - WebApplicationGallery module = new WebApplicationGallery(GalleryXmlFeedUrl); - // - result.Value = module.GetApplications(categoryId); - result.IsSuccess = true; - } - catch (Exception ex) - { - result.IsSuccess = false; - result.AddError(GalleryErrors.ProcessingFeedXMLError, ex); - } - // - return result; - } + public bool IsMsDeployInstalled() + { + // project has reference to Microsoft.Web.Deployment, so + return true; + /* + try + { + Assembly.Load(MS_DEPLOY_ASSEMBLY_NAME); + return true; + } + catch + { + // type could not be instantiated + return false; + } + */ + } - public GalleryApplicationResult GetGalleryApplication(string id) - { - GalleryApplicationResult result = new GalleryApplicationResult(); - // - try - { - WebApplicationGallery module = new WebApplicationGallery(GalleryXmlFeedUrl); - // - result.Value = module.GetApplicationByProductId(id); - result.IsSuccess = true; - } - catch (Exception ex) - { - result.IsSuccess = false; - result.AddError(GalleryErrors.ProcessingFeedXMLError, ex); - } - // - return result; - } + public GalleryLanguagesResult GetGalleryLanguages(int UserId) + { + GalleryLanguagesResult result = new GalleryLanguagesResult(); + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_VIEWER); + try + { + result.Value = module.GetLanguages(UserId); + result.IsSuccess = true; + } + catch (Exception ex) + { + result.IsSuccess = false; + result.AddError(GalleryErrors.GetLanguagesError, ex); + } - public GalleryWebAppStatus GetGalleryApplicationStatus(string id) - { - GalleryWebAppStatus status = GalleryWebAppStatus.NotDownloaded; - // - try - { - WebApplicationGallery module = new WebApplicationGallery(GalleryXmlFeedUrl); - // - GalleryApplication appObject = module.GetApplicationByProductId(id); - // - if (appObject == null) - return GalleryWebAppStatus.Failed; - // - string appPackageDistr = module.GetApplicationPackagePath(appObject); - // Check whether distributive exists locally - if (!File.Exists(appPackageDistr)) - return GalleryWebAppStatus.NotDownloaded; - // Check whether distributive is in download queue - if (AppPackagesDownloader.IsApplicationInDownloadQueue(id)) - return GalleryWebAppStatus.Downloading; - // From this point distibutive is considered as existed locally and it's not in download queue, - // so lets ensure the downloaded file either is not corrupted during the download process - #region Atom Feed Version 0.2 - if (appObject.InstallerItems.Count > 0) - { - string md5CheckSum = appObject.InstallerItems[0].InstallerFile.MD5; - // Check MD5 check sum of the distributive - if (AppPackagesDownloader.CheckApplicationPackageHashSum_MD5(appPackageDistr, md5CheckSum)) - status = GalleryWebAppStatus.Downloaded; - } - #endregion + return result; + } - #region Atom Feed Version 2.0.1.0 - else if (appObject.Installers.Count > 0) - { - string sha1CheckSum = appObject.Installers[0].InstallerFile.SHA1; - // Check SHA1 check sum of the distributive - if (AppPackagesDownloader.CheckApplicationPackageHashSum_SHA1(appPackageDistr, sha1CheckSum)) - status = GalleryWebAppStatus.Downloaded; - } - #endregion - // If MD5 check sum is failed then we have to resume distibutive download - else - status = GalleryWebAppStatus.NotDownloaded; - } - catch (Exception ex) - { - Log.WriteError(ex); - // - return GalleryWebAppStatus.Failed; - } - // - return status; - } + public GalleryCategoriesResult GetGalleryCategories(int UserId) + { + GalleryCategoriesResult result = new GalleryCategoriesResult(); - public GalleryWebAppStatus DownloadGalleryApplication(string id) - { - WebApplicationGallery module = new WebApplicationGallery(GalleryXmlFeedUrl); - // - GalleryApplication appObject = module.GetApplicationByProductId(id); - if (appObject == null) - return GalleryWebAppStatus.Failed; - // - string localAppDistr = module.GetApplicationPackagePath(appObject); - // - InstallerFile installerFile = null; + //try + //{ + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_VIEWER); + // + result.Value = module.GetCategories(UserId); + result.IsSuccess = true; + //} + //catch (Exception ex) + //{ + // result.IsSuccess = false; + // result.AddError(GalleryErrors.ProcessingFeedXMLError, ex); + //} + //// + return result; + } - #region Atom Feed Version 0.2 - // - if (appObject.InstallerItems.Count > 0) - { - InstallerItem installerItem_0 = appObject.InstallerItems[0]; - // - if (installerItem_0 == null) - { - Log.WriteWarning(WEB_PI_APP_PACK_ROOT_INSTALLER_ITEM_MISSING, appObject.Title); - return GalleryWebAppStatus.Failed; - } - // - installerFile = installerItem_0.InstallerFile; - } - #endregion + public GalleryApplicationsResult GetGalleryApplications(int UserId, string categoryId) + { + GalleryApplicationsResult result = new GalleryApplicationsResult(); - #region Atom Feed Version 2.0.1.0 - // - if (appObject.Installers.Count > 0) - { - Installer installerItem_0 = appObject.Installers[0]; - // - if (installerItem_0 == null) - { - Log.WriteWarning(WEB_PI_APP_PACK_ROOT_INSTALLER_ITEM_MISSING, appObject.Title); - return GalleryWebAppStatus.Failed; - } - // - installerFile = installerItem_0.InstallerFile; - } - #endregion + try + { + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_VIEWER); + // + result.Value = module.GetApplications(UserId, categoryId); + result.IsSuccess = true; + } + catch (Exception ex) + { + result.IsSuccess = false; + result.AddError(GalleryErrors.ProcessingFeedXMLError, ex); + } + // + return result; + } - // - if (installerFile == null || String.IsNullOrEmpty(installerFile.InstallerUrl)) - { - Log.WriteWarning(WEB_PI_APP_PACK_DISPLAY_URL_MISSING, appObject.Title); - return GalleryWebAppStatus.Failed; - } + public GalleryApplicationsResult GetGalleryApplicationsFiltered(int UserId, string pattern) + { + GalleryApplicationsResult result = new GalleryApplicationsResult(); - // - try - { - string appCacheRoot = Path.GetDirectoryName(localAppDistr); - // - if (!Directory.Exists(appCacheRoot)) - Directory.CreateDirectory(appCacheRoot); - // - Log.WriteInfo("Local distributive path: {0}", localAppDistr); - AppPackagesDownloader.StartApplicationDownload(id, installerFile.InstallerUrl, localAppDistr); - } - catch (Exception ex) - { - Log.WriteError(ex); - // - return GalleryWebAppStatus.Failed; - } - // - return GalleryWebAppStatus.Downloading; - } + try + { + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_VIEWER); - public bool IsMsDeployInstalled() - { - WebApplicationGallery module = new WebApplicationGallery(GalleryXmlFeedUrl); - // - return module.IsMsDeployInstalled(); - } + result.Value = module.GetGalleryApplicationsFiltered(UserId, pattern); + result.IsSuccess = true; + } + catch (Exception ex) + { + result.IsSuccess = false; + result.AddError(ex.Message, ex); + } - public DeploymentParametersResult GetGalleryApplicationParameters(string id) - { - DeploymentParametersResult result = new DeploymentParametersResult(); - try - { - WebApplicationGallery module = new WebApplicationGallery(GalleryXmlFeedUrl); - // - result.Value = module.GetApplicationParameters(id); - result.IsSuccess = true; - } - catch (Exception ex) - { - result.IsSuccess = false; - result.AddError(GalleryErrors.ProcessingPackageError, ex); - } - // - return result; - } + return result; + } - public StringResultObject InstallGalleryApplication(string webAppId, List updatedValues) - { - StringResultObject result = new StringResultObject(); - try - { - WebApplicationGallery module = new WebApplicationGallery(GalleryXmlFeedUrl); - // - string applicationPath = module.InstallApplication(webAppId, updatedValues); - // - if (!String.IsNullOrEmpty(applicationPath)) - { - result.Value = applicationPath; - result.IsSuccess = true; - } - } - catch (Exception ex) - { - result.IsSuccess = false; - result.AddError(GalleryErrors.PackageInstallationError, ex); - } - // - return result; - } + public GalleryApplicationResult GetGalleryApplication(int UserId, string id) + { + GalleryApplicationResult result = new GalleryApplicationResult(); + // + try + { + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_VIEWER); + // + result.Value = module.GetApplicationByProductId(UserId, id); + result.IsSuccess = true; + result.ErrorCodes.AddRange(module.GetMissingDependenciesForApplicationById(UserId, id)); + } + catch (Exception ex) + { + result.IsSuccess = false; + result.AddError(GalleryErrors.ProcessingFeedXMLError, ex); + } + // + return result; + } + + public GalleryWebAppStatus DownloadGalleryApplication(int UserId, string id) + { + return GetGalleryApplicationStatus(UserId, id); + } + + public GalleryWebAppStatus GetGalleryApplicationStatus(int UserId, string id) + { + try + { + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_INSTALLER); + + return module.DownloadAppAndGetStatus(UserId, id); + } + catch (Exception ex) + { + Log.WriteError(ex); + return GalleryWebAppStatus.Failed; + } + } + + public DeploymentParametersResult GetGalleryApplicationParameters(int UserId, string id) + { + DeploymentParametersResult result = new DeploymentParametersResult(); + + try + { + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_INSTALLER); + // + result.Value = module.GetApplicationParameters(UserId, id); + result.IsSuccess = true; + } + catch (Exception ex) + { + result.IsSuccess = false; + result.AddError(GalleryErrors.ProcessingPackageError, ex); + } + // + return result; + } + + + public StringResultObject InstallGalleryApplication(int UserId, string webAppId, List updatedValues, string languageId) + { + StringResultObject result = new StringResultObject(); + + try + { + WPIApplicationGallery module = new WPIApplicationGallery(WPI_INSTANCE_INSTALLER); + // + module.InstallApplication(UserId, webAppId, updatedValues, languageId, ref result); + + if (result.IsSuccess) + { + module.DeleteWpiHelper(UserId); + } + } + catch (Exception ex) + { + result.IsSuccess = false; + result.AddError(GalleryErrors.PackageInstallationError, ex); + } + // + return result; + } #endregion diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WPIWebApplicationGallery/WPIApplicationGallery.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WPIWebApplicationGallery/WPIApplicationGallery.cs new file mode 100644 index 00000000..6e19a004 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WPIWebApplicationGallery/WPIApplicationGallery.cs @@ -0,0 +1,438 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +using System; +using System.Collections.Generic; +using System.IO; +using System.Security; +using System.Text; +using Microsoft.Practices.EnterpriseLibrary.Caching; +using Microsoft.Web.Deployment; +using Microsoft.Web.PlatformInstaller; +using WebsitePanel.Providers.ResultObjects; +using WebsitePanel.Providers.Utils; +using WebsitePanel.Providers.WebAppGallery; +using WebsitePanel.Server.Code; +using WebsitePanel.Server.Utils; +using System.Web; +using System.Diagnostics; +using Microsoft.Practices.EnterpriseLibrary.Caching.Expirations; + +namespace WebsitePanel.Providers.Web.WPIWebApplicationGallery +{ + internal class WPIApplicationGallery + { + + private CacheManager _cache; + private const int LIVE_IN_CACHE_MINUTES = 20; + private string _sufix=""; + + public WPIApplicationGallery(string sufix) + { + _sufix = sufix; + //_feeds = new[] + // { + // "https://www.microsoft.com/web/webpi/3.0/webproductlist.xml", + // "http://www.helicontech.com/zoo/feed/wsp" + // }; + _cache = CacheFactory.GetCacheManager(); + //_wpi = GetWpiHelper(); + } + + + + private string GetKey_Feeds(int UserId) + { + return "WPIHELPER_CACHE_FEEDS" + UserId.ToString(); + } + + private string GetKey_object(int UserId) + { + return "WPIHELPER_CACHE_OBJECTS" + UserId.ToString() + _sufix; + } + + public void InitFeeds(int UserId, string[] feeds) + { + //Log.WriteInfo("InitFeeds {0} ", UserId); + + string CACHE_KEY = GetKey_Feeds(UserId); + + if (_cache.Contains(CACHE_KEY)) + { + string[] oldfeeds = (string[])_cache[CACHE_KEY]; + + if (!ArraysEqual(feeds, oldfeeds)) + { + //Feeeds have been changed + ICacheItemExpiration exp = new SlidingTime(TimeSpan.FromMinutes(LIVE_IN_CACHE_MINUTES*2)); + _cache.Add(CACHE_KEY, feeds, CacheItemPriority.Normal, null, exp ); + + DeleteWpiHelper(UserId); + } + + } + else + { + //add to cache + ICacheItemExpiration exp = new SlidingTime(TimeSpan.FromMinutes(LIVE_IN_CACHE_MINUTES*2)); + _cache.Add(CACHE_KEY, feeds, CacheItemPriority.Normal, null, exp); + + } + + } + + private WpiHelper GetWpiHelper(int UserId) + { + string CACHE_KEY = GetKey_object(UserId); + + if (_cache.Contains(CACHE_KEY)) + { + WpiHelper result = (WpiHelper)_cache[CACHE_KEY]; + + if (result != null) + { + return result; + } + + } + + string[] feeds = (string[])_cache[GetKey_Feeds(UserId)]; + if (null == feeds) + { + throw new Exception("BUG:No feeds in cache."); + } + + WpiHelper wpi = new WpiHelper(feeds); + ICacheItemExpiration exp = new SlidingTime(TimeSpan.FromMinutes(LIVE_IN_CACHE_MINUTES)); + + _cache.Add(CACHE_KEY, wpi, CacheItemPriority.Normal, null, exp); + //Debug.WriteLine(string.Format("GetWpiHelper: put in cache. User {0}", UserId)); + + return wpi; + } + + public void DeleteWpiHelper(int UserId) + { + _cache.Remove(GetKey_object(UserId)); + } + + + #region Public methods + + public void SetResourceLanguage(int UserId, string resourceLanguage) + { + WpiHelper wpi = GetWpiHelper(UserId); + wpi.SetResourceLanguage(resourceLanguage); + } + + + public List GetLanguages(int UserId) + { + List langs = new List(); + WpiHelper wpi = GetWpiHelper(UserId); + foreach (Language lang in wpi.GetLanguages()) + { + langs.Add(new SettingPair(lang.Id, lang.Name)); + } + + return langs; + } + + public List GetCategories(int UserId) + { + WpiHelper wpi = GetWpiHelper(UserId); + + List categories = new List(); + + foreach (Keyword keyword in wpi.GetKeywords()) + { + + if (wpi.IsKeywordApplication(keyword)) + { + categories.Add(new GalleryCategory + { + Id = keyword.Id, + Name = keyword.Text + }); + + } + } + + return categories; + } + + public List GetApplications(int UserId, string categoryId) + { + WpiHelper wpi = GetWpiHelper(UserId); + + List products = wpi.GetApplications(categoryId); + List applications = new List(); + + foreach (Product product in products) + { + applications.Add(MakeGalleryApplicationFromProduct(product)); + } + + return applications; + } + + + + public List GetGalleryApplicationsFiltered(int UserId, string pattern) + { + WpiHelper wpi = GetWpiHelper(UserId); + + List products = wpi.GetApplications(null); + List applications = new List(); + + foreach (Product product in products) + { + if (product.Title.ToLower().Contains(pattern.ToLower())) + { + applications.Add(MakeGalleryApplicationFromProduct(product)); + } + + } + + return applications; + } + + + + public GalleryApplication GetApplicationByProductId(int UserId, string id) + { + WpiHelper wpi = GetWpiHelper(UserId); + + return MakeGalleryApplicationFromProduct(wpi.GetProduct(id)); + } + + public List GetMissingDependenciesForApplicationById(int UserId, string id) + { + WpiHelper wpi = GetWpiHelper(UserId); + + List missingDeps = new List(); + foreach (Product product in wpi.GetProductsWithDependencies(new string[] { id })) + { + if (product.ProductId != id) + { + missingDeps.Add(product.Title); + } + } + + return missingDeps; + } + + public GalleryWebAppStatus DownloadAppAndGetStatus(int UserId, string id) + { + WpiHelper wpi = GetWpiHelper(UserId); + wpi.InstallProducts(new[] { id }, null, null, null); + + return GalleryWebAppStatus.Downloaded; + } + + public List GetApplicationParameters(int UserId, string id) + { + WpiHelper wpi = GetWpiHelper(UserId); + + Product product = wpi.GetProduct(id); + List deploymentParameters = new List(); + IList appDecalredParameters = wpi.GetAppDecalredParameters(id); + foreach (DeclaredParameter declaredParameter in appDecalredParameters) + { + deploymentParameters.Add(MakeDeploymentParameterFromDecalredParameter(declaredParameter)); + } + + return deploymentParameters; + + } + + public void InstallApplication( + int UserId, + string webAppId, + List updatedParameters, + string languageId, + ref StringResultObject result) + { + WpiHelper wpi = GetWpiHelper(UserId); + + // convert list of DeploymentParameter to list of WpiUpdatedDeploymentParameter + List updatedWpiParameters = new List(); + foreach (DeploymentParameter updatedParameter in updatedParameters) + { + updatedWpiParameters.Add( + new WpiUpdatedDeploymentParameter + { + Name = updatedParameter.Name, + Value = updatedParameter.Value, + WellKnownTags = (DeploymentWellKnownTag)updatedParameter.WellKnownTags + } + ); + } + + Log.WriteStart("Application installation starting"); + string log; + string failedMessage; + bool success = wpi.InstallApplication( + webAppId, + updatedWpiParameters, + languageId, + InstallStatusUpdatedHandler, InstallCompleteHandler, + out log, + out failedMessage); + + result.Value = log; + result.IsSuccess = success; + + // add log files to result value + try + { + StringBuilder sb = new StringBuilder(); + string[] filePaths = Directory.GetFiles(wpi.GetLogFileDirectory()); + foreach (string filePath in filePaths) + { + using (StreamReader streamReader = new StreamReader(filePath)) + { + string fileContent = + SecurityElement.Escape(StringUtils.CleanupASCIIControlCharacters(streamReader.ReadToEnd())); + sb.AppendLine().AppendLine(filePath).AppendLine(fileContent); + } + + } + + result.Value += sb.ToString(); + } + catch(Exception) + { + } + + + if (!success) + { + result.AddError(failedMessage, null); + } + + // don`t reuse wpi helper after installation + DeleteWpiHelper(UserId); + } + + #endregion + + #region installaton events + + private void InstallStatusUpdatedHandler(object sender, InstallStatusEventArgs installStatusEventArgs) + { + Log.WriteInfo("Application {0} installation status: {1}, return code: {0}", + installStatusEventArgs.InstallerContext.ProductName, + installStatusEventArgs.InstallerContext.InstallationState, + installStatusEventArgs.InstallerContext.ReturnCode); + } + + private void InstallCompleteHandler(object sender, EventArgs eventArgs) + { + Log.WriteEnd("Application installation completed"); + } + + #endregion + + + #region static helpers + + protected static GalleryApplication MakeGalleryApplicationFromProduct(Product product) + { + if (null == product) + { + return null; + } + + int size = 0; + if (null != product.Installers && product.Installers.Count > 0 && null != product.Installers[0].InstallerFile) + { + size = product.Installers[0].InstallerFile.FileSize; + } + + return new GalleryApplication + { + Id = product.ProductId, + Title = product.Title, + Author = new Author {Name = product.Author, Uri = product.AuthorUri.ToString()}, + IconUrl = product.IconUrl.ToString(), + Version = product.Version, + Description = product.LongDescription, + Summary = product.Summary, + LastUpdated = product.Published, + Published = product.Published, + Link = product.Link.ToString(), + InstallerFileSize = size + }; + } + + protected static DeploymentParameter MakeDeploymentParameterFromDecalredParameter(DeclaredParameter d) + { + DeploymentParameter r = new DeploymentParameter(); + r.Name = d.Name; + r.FriendlyName = d.FriendlyName; + r.DefaultValue = d.DefaultValue; + r.Description = d.Description; + r.WellKnownTags = (DeploymentParameterWellKnownTag) d.Tags; + if (null != d.Validation) + { + r.ValidationKind = (DeploymentParameterValidationKind) d.Validation.Kind; + r.ValidationString = d.Validation.ValidationString; + } + else + { + r.ValidationKind = DeploymentParameterValidationKind.None; + } + + return r; + } + + protected static bool ArraysEqual(T[] a1, T[] a2) + { + if (ReferenceEquals(a1, a2)) + return true; + + if (a1 == null || a2 == null) + return false; + + if (a1.Length != a2.Length) + return false; + + EqualityComparer comparer = EqualityComparer.Default; + for (int i = 0; i < a1.Length; i++) + { + if (!comparer.Equals(a1[i], a2[i])) return false; + } + return true; + } + + + #endregion + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WebApplicationGallery.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WebApplicationGallery.cs index bbee5146..ed925e7a 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WebApplicationGallery.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WebApplicationGallery.cs @@ -51,7 +51,8 @@ using System.Linq; namespace WebsitePanel.Providers.Web { - public sealed class WebApplicationGallery + [Obsolete] + public sealed class WebApplicationGallery { // MS Deploy library private const string MS_DEPLOY_ASSEMBLY_NAME = "Microsoft.Web.Deployment"; diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WebsitePanel.Providers.Web.IIs60.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WebsitePanel.Providers.Web.IIs60.csproj index 5fdf4a1b..79f48e11 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WebsitePanel.Providers.Web.IIs60.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs60/WebsitePanel.Providers.Web.IIs60.csproj @@ -67,10 +67,14 @@ False ..\..\Lib\Microsoft.Practices.ObjectBuilder.dll - + False ..\..\Lib\References\Microsoft\Microsoft.Web.Deployment.dll + + False + ..\..\Lib\Microsoft.Web.PlatformInstaller.dll + @@ -82,9 +86,13 @@ VersionInfo.cs + + WPIWebApplicationGallery\WPIHelper.cs + + diff --git a/WebsitePanel/Sources/WebsitePanel.Server.Client/WebServerProxy.cs b/WebsitePanel/Sources/WebsitePanel.Server.Client/WebServerProxy.cs index 1c7b345c..2b2f80a0 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server.Client/WebServerProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server.Client/WebServerProxy.cs @@ -39,20 +39,21 @@ // // This source code was auto-generated by wsdl, Version=2.0.50727.3038. // -namespace WebsitePanel.Providers.Web { +namespace WebsitePanel.Providers.Web +{ using System.Diagnostics; using System.Web.Services; using System.ComponentModel; using System.Web.Services.Protocols; using System; using System.Xml.Serialization; - using WebsitePanel.Providers.ResultObjects; - using WebsitePanel.Providers.WebAppGallery; - using WebsitePanel.Providers.Common; + using WebsitePanel.Providers.ResultObjects; + using WebsitePanel.Providers.WebAppGallery; + using WebsitePanel.Providers.Common; /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] [System.Web.Services.WebServiceBindingAttribute(Name="WebServerSoap", Namespace="http://smbsaas/websitepanel/server/")] @@ -173,12 +174,24 @@ namespace WebsitePanel.Providers.Web { private System.Threading.SendOrPostCallback UpdateHeliconApeGroupOperationCompleted; + private System.Threading.SendOrPostCallback GrantWebDeployPublishingAccessOperationCompleted; + + private System.Threading.SendOrPostCallback RevokeWebDeployPublishingAccessOperationCompleted; + private System.Threading.SendOrPostCallback DeleteHeliconApeGroupOperationCompleted; + private System.Threading.SendOrPostCallback InitFeedsOperationCompleted; + + private System.Threading.SendOrPostCallback SetResourceLanguageOperationCompleted; + + private System.Threading.SendOrPostCallback GetGalleryLanguagesOperationCompleted; + private System.Threading.SendOrPostCallback GetGalleryCategoriesOperationCompleted; private System.Threading.SendOrPostCallback GetGalleryApplicationsOperationCompleted; + private System.Threading.SendOrPostCallback GetGalleryApplicationsFilteredOperationCompleted; + private System.Threading.SendOrPostCallback IsMsDeployInstalledOperationCompleted; private System.Threading.SendOrPostCallback GetGalleryApplicationOperationCompleted; @@ -196,33 +209,29 @@ namespace WebsitePanel.Providers.Web { private System.Threading.SendOrPostCallback CheckWebManagementPasswordComplexityOperationCompleted; private System.Threading.SendOrPostCallback GrantWebManagementAccessOperationCompleted; - - private System.Threading.SendOrPostCallback GrantWebDeployPublishingAccessOperationCompleted; - - private System.Threading.SendOrPostCallback RevokeWebDeployPublishingAccessOperationCompleted; private System.Threading.SendOrPostCallback RevokeWebManagementAccessOperationCompleted; private System.Threading.SendOrPostCallback ChangeWebManagementAccessPasswordOperationCompleted; - + private System.Threading.SendOrPostCallback generateCSROperationCompleted; - + private System.Threading.SendOrPostCallback generateRenewalCSROperationCompleted; - + private System.Threading.SendOrPostCallback getCertificateOperationCompleted; - + private System.Threading.SendOrPostCallback installCertificateOperationCompleted; - + private System.Threading.SendOrPostCallback installPFXOperationCompleted; - + private System.Threading.SendOrPostCallback exportCertificateOperationCompleted; - + private System.Threading.SendOrPostCallback getServerCertificatesOperationCompleted; - + private System.Threading.SendOrPostCallback DeleteCertificateOperationCompleted; - + private System.Threading.SendOrPostCallback ImportCertificateOperationCompleted; - + private System.Threading.SendOrPostCallback CheckCertificateOperationCompleted; /// @@ -398,15 +407,33 @@ namespace WebsitePanel.Providers.Web { /// public event UpdateHeliconApeGroupCompletedEventHandler UpdateHeliconApeGroupCompleted; + /// + public event GrantWebDeployPublishingAccessCompletedEventHandler GrantWebDeployPublishingAccessCompleted; + + /// + public event RevokeWebDeployPublishingAccessCompletedEventHandler RevokeWebDeployPublishingAccessCompleted; + /// public event DeleteHeliconApeGroupCompletedEventHandler DeleteHeliconApeGroupCompleted; + /// + public event InitFeedsCompletedEventHandler InitFeedsCompleted; + + /// + public event SetResourceLanguageCompletedEventHandler SetResourceLanguageCompleted; + + /// + public event GetGalleryLanguagesCompletedEventHandler GetGalleryLanguagesCompleted; + /// public event GetGalleryCategoriesCompletedEventHandler GetGalleryCategoriesCompleted; /// public event GetGalleryApplicationsCompletedEventHandler GetGalleryApplicationsCompleted; + /// + public event GetGalleryApplicationsFilteredCompletedEventHandler GetGalleryApplicationsFilteredCompleted; + /// public event IsMsDeployInstalledCompletedEventHandler IsMsDeployInstalledCompleted; @@ -435,44 +462,38 @@ namespace WebsitePanel.Providers.Web { public event GrantWebManagementAccessCompletedEventHandler GrantWebManagementAccessCompleted; /// - public event GrantWebDeployPublishingAccessCompletedEventHandler GrantWebDeployPublishingAccessCompleted; - - /// - public event RevokeWebDeployPublishingAccessCompletedEventHandler RevokeWebDeployPublishingAccessCompleted; - - /// - public event RevokeWebManagementAccessCompletedEventHandler RevokeWebManagementAccessCompleted; + public event RevokeWebManagementAccessCompletedEventHandler RevokeWebManagementAccessCompleted; /// public event ChangeWebManagementAccessPasswordCompletedEventHandler ChangeWebManagementAccessPasswordCompleted; - + /// public event generateCSRCompletedEventHandler generateCSRCompleted; - + /// public event generateRenewalCSRCompletedEventHandler generateRenewalCSRCompleted; - + /// public event getCertificateCompletedEventHandler getCertificateCompleted; - + /// public event installCertificateCompletedEventHandler installCertificateCompleted; - + /// public event installPFXCompletedEventHandler installPFXCompleted; - + /// public event exportCertificateCompletedEventHandler exportCertificateCompleted; - + /// public event getServerCertificatesCompletedEventHandler getServerCertificatesCompleted; - + /// public event DeleteCertificateCompletedEventHandler DeleteCertificateCompleted; - + /// public event ImportCertificateCompletedEventHandler ImportCertificateCompleted; - + /// public event CheckCertificateCompletedEventHandler CheckCertificateCompleted; @@ -2852,6 +2873,95 @@ namespace WebsitePanel.Providers.Web { } } + /// + [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GrantWebDeployPublishingAccess", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void GrantWebDeployPublishingAccess(string siteId, string accountName, string accountPassword) { + this.Invoke("GrantWebDeployPublishingAccess", new object[] { + siteId, + accountName, + accountPassword}); + } + + /// + public System.IAsyncResult BeginGrantWebDeployPublishingAccess(string siteId, string accountName, string accountPassword, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GrantWebDeployPublishingAccess", new object[] { + siteId, + accountName, + accountPassword}, callback, asyncState); + } + + /// + public void EndGrantWebDeployPublishingAccess(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void GrantWebDeployPublishingAccessAsync(string siteId, string accountName, string accountPassword) { + this.GrantWebDeployPublishingAccessAsync(siteId, accountName, accountPassword, null); + } + + /// + public void GrantWebDeployPublishingAccessAsync(string siteId, string accountName, string accountPassword, object userState) { + if ((this.GrantWebDeployPublishingAccessOperationCompleted == null)) { + this.GrantWebDeployPublishingAccessOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGrantWebDeployPublishingAccessOperationCompleted); + } + this.InvokeAsync("GrantWebDeployPublishingAccess", new object[] { + siteId, + accountName, + accountPassword}, this.GrantWebDeployPublishingAccessOperationCompleted, userState); + } + + private void OnGrantWebDeployPublishingAccessOperationCompleted(object arg) { + if ((this.GrantWebDeployPublishingAccessCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GrantWebDeployPublishingAccessCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/RevokeWebDeployPublishingAccess", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void RevokeWebDeployPublishingAccess(string siteId, string accountName) { + this.Invoke("RevokeWebDeployPublishingAccess", new object[] { + siteId, + accountName}); + } + + /// + public System.IAsyncResult BeginRevokeWebDeployPublishingAccess(string siteId, string accountName, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("RevokeWebDeployPublishingAccess", new object[] { + siteId, + accountName}, callback, asyncState); + } + + /// + public void EndRevokeWebDeployPublishingAccess(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void RevokeWebDeployPublishingAccessAsync(string siteId, string accountName) { + this.RevokeWebDeployPublishingAccessAsync(siteId, accountName, null); + } + + /// + public void RevokeWebDeployPublishingAccessAsync(string siteId, string accountName, object userState) { + if ((this.RevokeWebDeployPublishingAccessOperationCompleted == null)) { + this.RevokeWebDeployPublishingAccessOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRevokeWebDeployPublishingAccessOperationCompleted); + } + this.InvokeAsync("RevokeWebDeployPublishingAccess", new object[] { + siteId, + accountName}, this.RevokeWebDeployPublishingAccessOperationCompleted, userState); + } + + private void OnRevokeWebDeployPublishingAccessOperationCompleted(object arg) { + if ((this.RevokeWebDeployPublishingAccessCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.RevokeWebDeployPublishingAccessCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/DeleteHeliconApeGroup", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] @@ -2895,17 +3005,147 @@ namespace WebsitePanel.Providers.Web { } } + /// + [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/InitFeeds", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void InitFeeds(int UserId, string[] feeds) { + this.Invoke("InitFeeds", new object[] { + UserId, + feeds}); + } + + /// + public System.IAsyncResult BeginInitFeeds(int UserId, string[] feeds, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("InitFeeds", new object[] { + UserId, + feeds}, callback, asyncState); + } + + /// + public void EndInitFeeds(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void InitFeedsAsync(int UserId, string[] feeds) { + this.InitFeedsAsync(UserId, feeds, null); + } + + /// + public void InitFeedsAsync(int UserId, string[] feeds, object userState) { + if ((this.InitFeedsOperationCompleted == null)) { + this.InitFeedsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInitFeedsOperationCompleted); + } + this.InvokeAsync("InitFeeds", new object[] { + UserId, + feeds}, this.InitFeedsOperationCompleted, userState); + } + + private void OnInitFeedsOperationCompleted(object arg) { + if ((this.InitFeedsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.InitFeedsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/SetResourceLanguage", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void SetResourceLanguage(int UserId, string resourceLanguage) { + this.Invoke("SetResourceLanguage", new object[] { + UserId, + resourceLanguage}); + } + + /// + public System.IAsyncResult BeginSetResourceLanguage(int UserId, string resourceLanguage, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("SetResourceLanguage", new object[] { + UserId, + resourceLanguage}, callback, asyncState); + } + + /// + public void EndSetResourceLanguage(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void SetResourceLanguageAsync(int UserId, string resourceLanguage) { + this.SetResourceLanguageAsync(UserId, resourceLanguage, null); + } + + /// + public void SetResourceLanguageAsync(int UserId, string resourceLanguage, object userState) { + if ((this.SetResourceLanguageOperationCompleted == null)) { + this.SetResourceLanguageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetResourceLanguageOperationCompleted); + } + this.InvokeAsync("SetResourceLanguage", new object[] { + UserId, + resourceLanguage}, this.SetResourceLanguageOperationCompleted, userState); + } + + private void OnSetResourceLanguageOperationCompleted(object arg) { + if ((this.SetResourceLanguageCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.SetResourceLanguageCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetGalleryLanguages", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public GalleryLanguagesResult GetGalleryLanguages(int UserId) { + object[] results = this.Invoke("GetGalleryLanguages", new object[] { + UserId}); + return ((GalleryLanguagesResult)(results[0])); + } + + /// + public System.IAsyncResult BeginGetGalleryLanguages(int UserId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetGalleryLanguages", new object[] { + UserId}, callback, asyncState); + } + + /// + public GalleryLanguagesResult EndGetGalleryLanguages(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((GalleryLanguagesResult)(results[0])); + } + + /// + public void GetGalleryLanguagesAsync(int UserId) { + this.GetGalleryLanguagesAsync(UserId, null); + } + + /// + public void GetGalleryLanguagesAsync(int UserId, object userState) { + if ((this.GetGalleryLanguagesOperationCompleted == null)) { + this.GetGalleryLanguagesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryLanguagesOperationCompleted); + } + this.InvokeAsync("GetGalleryLanguages", new object[] { + UserId}, this.GetGalleryLanguagesOperationCompleted, userState); + } + + private void OnGetGalleryLanguagesOperationCompleted(object arg) { + if ((this.GetGalleryLanguagesCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetGalleryLanguagesCompleted(this, new GetGalleryLanguagesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetGalleryCategories", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public GalleryCategoriesResult GetGalleryCategories() { - object[] results = this.Invoke("GetGalleryCategories", new object[0]); + public GalleryCategoriesResult GetGalleryCategories(int UserId) { + object[] results = this.Invoke("GetGalleryCategories", new object[] { + UserId}); return ((GalleryCategoriesResult)(results[0])); } /// - public System.IAsyncResult BeginGetGalleryCategories(System.AsyncCallback callback, object asyncState) { - return this.BeginInvoke("GetGalleryCategories", new object[0], callback, asyncState); + public System.IAsyncResult BeginGetGalleryCategories(int UserId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetGalleryCategories", new object[] { + UserId}, callback, asyncState); } /// @@ -2915,16 +3155,17 @@ namespace WebsitePanel.Providers.Web { } /// - public void GetGalleryCategoriesAsync() { - this.GetGalleryCategoriesAsync(null); + public void GetGalleryCategoriesAsync(int UserId) { + this.GetGalleryCategoriesAsync(UserId, null); } /// - public void GetGalleryCategoriesAsync(object userState) { + public void GetGalleryCategoriesAsync(int UserId, object userState) { if ((this.GetGalleryCategoriesOperationCompleted == null)) { this.GetGalleryCategoriesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryCategoriesOperationCompleted); } - this.InvokeAsync("GetGalleryCategories", new object[0], this.GetGalleryCategoriesOperationCompleted, userState); + this.InvokeAsync("GetGalleryCategories", new object[] { + UserId}, this.GetGalleryCategoriesOperationCompleted, userState); } private void OnGetGalleryCategoriesOperationCompleted(object arg) { @@ -2937,15 +3178,17 @@ namespace WebsitePanel.Providers.Web { /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetGalleryApplications", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public GalleryApplicationsResult GetGalleryApplications(string categoryId) { + public GalleryApplicationsResult GetGalleryApplications(int UserId, string categoryId) { object[] results = this.Invoke("GetGalleryApplications", new object[] { + UserId, categoryId}); return ((GalleryApplicationsResult)(results[0])); } /// - public System.IAsyncResult BeginGetGalleryApplications(string categoryId, System.AsyncCallback callback, object asyncState) { + public System.IAsyncResult BeginGetGalleryApplications(int UserId, string categoryId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetGalleryApplications", new object[] { + UserId, categoryId}, callback, asyncState); } @@ -2956,16 +3199,17 @@ namespace WebsitePanel.Providers.Web { } /// - public void GetGalleryApplicationsAsync(string categoryId) { - this.GetGalleryApplicationsAsync(categoryId, null); + public void GetGalleryApplicationsAsync(int UserId, string categoryId) { + this.GetGalleryApplicationsAsync(UserId, categoryId, null); } /// - public void GetGalleryApplicationsAsync(string categoryId, object userState) { + public void GetGalleryApplicationsAsync(int UserId, string categoryId, object userState) { if ((this.GetGalleryApplicationsOperationCompleted == null)) { this.GetGalleryApplicationsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryApplicationsOperationCompleted); } this.InvokeAsync("GetGalleryApplications", new object[] { + UserId, categoryId}, this.GetGalleryApplicationsOperationCompleted, userState); } @@ -2976,6 +3220,51 @@ namespace WebsitePanel.Providers.Web { } } + /// + [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetGalleryApplicationsFiltered", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public GalleryApplicationsResult GetGalleryApplicationsFiltered(int UserId, string pattern) { + object[] results = this.Invoke("GetGalleryApplicationsFiltered", new object[] { + UserId, + pattern}); + return ((GalleryApplicationsResult)(results[0])); + } + + /// + public System.IAsyncResult BeginGetGalleryApplicationsFiltered(int UserId, string pattern, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetGalleryApplicationsFiltered", new object[] { + UserId, + pattern}, callback, asyncState); + } + + /// + public GalleryApplicationsResult EndGetGalleryApplicationsFiltered(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((GalleryApplicationsResult)(results[0])); + } + + /// + public void GetGalleryApplicationsFilteredAsync(int UserId, string pattern) { + this.GetGalleryApplicationsFilteredAsync(UserId, pattern, null); + } + + /// + public void GetGalleryApplicationsFilteredAsync(int UserId, string pattern, object userState) { + if ((this.GetGalleryApplicationsFilteredOperationCompleted == null)) { + this.GetGalleryApplicationsFilteredOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryApplicationsFilteredOperationCompleted); + } + this.InvokeAsync("GetGalleryApplicationsFiltered", new object[] { + UserId, + pattern}, this.GetGalleryApplicationsFilteredOperationCompleted, userState); + } + + private void OnGetGalleryApplicationsFilteredOperationCompleted(object arg) { + if ((this.GetGalleryApplicationsFilteredCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetGalleryApplicationsFilteredCompleted(this, new GetGalleryApplicationsFilteredCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/IsMsDeployInstalled", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] @@ -3018,15 +3307,17 @@ namespace WebsitePanel.Providers.Web { /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetGalleryApplication", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public GalleryApplicationResult GetGalleryApplication(string id) { + public GalleryApplicationResult GetGalleryApplication(int UserId, string id) { object[] results = this.Invoke("GetGalleryApplication", new object[] { + UserId, id}); return ((GalleryApplicationResult)(results[0])); } /// - public System.IAsyncResult BeginGetGalleryApplication(string id, System.AsyncCallback callback, object asyncState) { + public System.IAsyncResult BeginGetGalleryApplication(int UserId, string id, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetGalleryApplication", new object[] { + UserId, id}, callback, asyncState); } @@ -3037,16 +3328,17 @@ namespace WebsitePanel.Providers.Web { } /// - public void GetGalleryApplicationAsync(string id) { - this.GetGalleryApplicationAsync(id, null); + public void GetGalleryApplicationAsync(int UserId, string id) { + this.GetGalleryApplicationAsync(UserId, id, null); } /// - public void GetGalleryApplicationAsync(string id, object userState) { + public void GetGalleryApplicationAsync(int UserId, string id, object userState) { if ((this.GetGalleryApplicationOperationCompleted == null)) { this.GetGalleryApplicationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryApplicationOperationCompleted); } this.InvokeAsync("GetGalleryApplication", new object[] { + UserId, id}, this.GetGalleryApplicationOperationCompleted, userState); } @@ -3060,15 +3352,17 @@ namespace WebsitePanel.Providers.Web { /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetGalleryApplicationStatus", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public GalleryWebAppStatus GetGalleryApplicationStatus(string id) { + public GalleryWebAppStatus GetGalleryApplicationStatus(int UserId, string id) { object[] results = this.Invoke("GetGalleryApplicationStatus", new object[] { + UserId, id}); return ((GalleryWebAppStatus)(results[0])); } /// - public System.IAsyncResult BeginGetGalleryApplicationStatus(string id, System.AsyncCallback callback, object asyncState) { + public System.IAsyncResult BeginGetGalleryApplicationStatus(int UserId, string id, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetGalleryApplicationStatus", new object[] { + UserId, id}, callback, asyncState); } @@ -3079,16 +3373,17 @@ namespace WebsitePanel.Providers.Web { } /// - public void GetGalleryApplicationStatusAsync(string id) { - this.GetGalleryApplicationStatusAsync(id, null); + public void GetGalleryApplicationStatusAsync(int UserId, string id) { + this.GetGalleryApplicationStatusAsync(UserId, id, null); } /// - public void GetGalleryApplicationStatusAsync(string id, object userState) { + public void GetGalleryApplicationStatusAsync(int UserId, string id, object userState) { if ((this.GetGalleryApplicationStatusOperationCompleted == null)) { this.GetGalleryApplicationStatusOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryApplicationStatusOperationCompleted); } this.InvokeAsync("GetGalleryApplicationStatus", new object[] { + UserId, id}, this.GetGalleryApplicationStatusOperationCompleted, userState); } @@ -3102,15 +3397,17 @@ namespace WebsitePanel.Providers.Web { /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/DownloadGalleryApplication", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public GalleryWebAppStatus DownloadGalleryApplication(string id) { + public GalleryWebAppStatus DownloadGalleryApplication(int UserId, string id) { object[] results = this.Invoke("DownloadGalleryApplication", new object[] { + UserId, id}); return ((GalleryWebAppStatus)(results[0])); } /// - public System.IAsyncResult BeginDownloadGalleryApplication(string id, System.AsyncCallback callback, object asyncState) { + public System.IAsyncResult BeginDownloadGalleryApplication(int UserId, string id, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("DownloadGalleryApplication", new object[] { + UserId, id}, callback, asyncState); } @@ -3121,16 +3418,17 @@ namespace WebsitePanel.Providers.Web { } /// - public void DownloadGalleryApplicationAsync(string id) { - this.DownloadGalleryApplicationAsync(id, null); + public void DownloadGalleryApplicationAsync(int UserId, string id) { + this.DownloadGalleryApplicationAsync(UserId, id, null); } /// - public void DownloadGalleryApplicationAsync(string id, object userState) { + public void DownloadGalleryApplicationAsync(int UserId, string id, object userState) { if ((this.DownloadGalleryApplicationOperationCompleted == null)) { this.DownloadGalleryApplicationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDownloadGalleryApplicationOperationCompleted); } this.InvokeAsync("DownloadGalleryApplication", new object[] { + UserId, id}, this.DownloadGalleryApplicationOperationCompleted, userState); } @@ -3144,15 +3442,17 @@ namespace WebsitePanel.Providers.Web { /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetGalleryApplicationParameters", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public DeploymentParametersResult GetGalleryApplicationParameters(string id) { + public DeploymentParametersResult GetGalleryApplicationParameters(int UserId, string id) { object[] results = this.Invoke("GetGalleryApplicationParameters", new object[] { + UserId, id}); return ((DeploymentParametersResult)(results[0])); } /// - public System.IAsyncResult BeginGetGalleryApplicationParameters(string id, System.AsyncCallback callback, object asyncState) { + public System.IAsyncResult BeginGetGalleryApplicationParameters(int UserId, string id, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetGalleryApplicationParameters", new object[] { + UserId, id}, callback, asyncState); } @@ -3163,16 +3463,17 @@ namespace WebsitePanel.Providers.Web { } /// - public void GetGalleryApplicationParametersAsync(string id) { - this.GetGalleryApplicationParametersAsync(id, null); + public void GetGalleryApplicationParametersAsync(int UserId, string id) { + this.GetGalleryApplicationParametersAsync(UserId, id, null); } /// - public void GetGalleryApplicationParametersAsync(string id, object userState) { + public void GetGalleryApplicationParametersAsync(int UserId, string id, object userState) { if ((this.GetGalleryApplicationParametersOperationCompleted == null)) { this.GetGalleryApplicationParametersOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetGalleryApplicationParametersOperationCompleted); } this.InvokeAsync("GetGalleryApplicationParameters", new object[] { + UserId, id}, this.GetGalleryApplicationParametersOperationCompleted, userState); } @@ -3186,18 +3487,22 @@ namespace WebsitePanel.Providers.Web { /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/InstallGalleryApplication", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public StringResultObject InstallGalleryApplication(string id, DeploymentParameter[] updatedValues) { + public StringResultObject InstallGalleryApplication(int UserId, string id, DeploymentParameter[] updatedValues, string languageId) { object[] results = this.Invoke("InstallGalleryApplication", new object[] { + UserId, id, - updatedValues}); + updatedValues, + languageId}); return ((StringResultObject)(results[0])); } /// - public System.IAsyncResult BeginInstallGalleryApplication(string id, DeploymentParameter[] updatedValues, System.AsyncCallback callback, object asyncState) { + public System.IAsyncResult BeginInstallGalleryApplication(int UserId, string id, DeploymentParameter[] updatedValues, string languageId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("InstallGalleryApplication", new object[] { + UserId, id, - updatedValues}, callback, asyncState); + updatedValues, + languageId}, callback, asyncState); } /// @@ -3207,18 +3512,20 @@ namespace WebsitePanel.Providers.Web { } /// - public void InstallGalleryApplicationAsync(string id, DeploymentParameter[] updatedValues) { - this.InstallGalleryApplicationAsync(id, updatedValues, null); + public void InstallGalleryApplicationAsync(int UserId, string id, DeploymentParameter[] updatedValues, string languageId) { + this.InstallGalleryApplicationAsync(UserId, id, updatedValues, languageId, null); } /// - public void InstallGalleryApplicationAsync(string id, DeploymentParameter[] updatedValues, object userState) { + public void InstallGalleryApplicationAsync(int UserId, string id, DeploymentParameter[] updatedValues, string languageId, object userState) { if ((this.InstallGalleryApplicationOperationCompleted == null)) { this.InstallGalleryApplicationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInstallGalleryApplicationOperationCompleted); } this.InvokeAsync("InstallGalleryApplication", new object[] { + UserId, id, - updatedValues}, this.InstallGalleryApplicationOperationCompleted, userState); + updatedValues, + languageId}, this.InstallGalleryApplicationOperationCompleted, userState); } private void OnInstallGalleryApplicationOperationCompleted(object arg) { @@ -3360,112 +3667,7 @@ namespace WebsitePanel.Providers.Web { /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GrantWebDeployPublishingAccess", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public void GrantWebDeployPublishingAccess(string siteId, string accountName, string accountPassword) - { - this.Invoke("GrantWebDeployPublishingAccess", new object[] { - siteId, - accountName, - accountPassword}); - } - - /// - public System.IAsyncResult BeginGrantWebDeployPublishingAccess(string siteId, string accountName, string accountPassword, System.AsyncCallback callback, object asyncState) - { - return this.BeginInvoke("GrantWebDeployPublishingAccess", new object[] { - siteId, - accountName, - accountPassword}, callback, asyncState); - } - - /// - public void EndGrantWebDeployPublishingAccess(System.IAsyncResult asyncResult) - { - this.EndInvoke(asyncResult); - } - - /// - public void GrantWebDeployPublishingAccessAsync(string siteId, string accountName, string accountPassword) - { - this.GrantWebDeployPublishingAccessAsync(siteId, accountName, accountPassword, null); - } - - /// - public void GrantWebDeployPublishingAccessAsync(string siteId, string accountName, string accountPassword, object userState) - { - if ((this.GrantWebDeployPublishingAccessOperationCompleted == null)) - { - this.GrantWebDeployPublishingAccessOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGrantWebDeployPublishingAccessOperationCompleted); - } - this.InvokeAsync("GrantWebDeployPublishingAccess", new object[] { - siteId, - accountName, - accountPassword}, this.GrantWebDeployPublishingAccessOperationCompleted, userState); - } - - private void OnGrantWebDeployPublishingAccessOperationCompleted(object arg) - { - if ((this.GrantWebDeployPublishingAccessCompleted != null)) - { - System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); - this.GrantWebDeployPublishingAccessCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); - } - } - - /// - [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/RevokeWebDeployPublishingAccess", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public void RevokeWebDeployPublishingAccess(string siteId, string accountName) - { - this.Invoke("RevokeWebDeployPublishingAccess", new object[] { - siteId, - accountName}); - } - - /// - public System.IAsyncResult BeginRevokeWebDeployPublishingAccess(string siteId, string accountName, System.AsyncCallback callback, object asyncState) - { - return this.BeginInvoke("RevokeWebDeployPublishingAccess", new object[] { - siteId, - accountName}, callback, asyncState); - } - - /// - public void EndRevokeWebDeployPublishingAccess(System.IAsyncResult asyncResult) - { - this.EndInvoke(asyncResult); - } - - /// - public void RevokeWebDeployPublishingAccessAsync(string siteId, string accountName) - { - this.RevokeWebDeployPublishingAccessAsync(siteId, accountName, null); - } - - /// - public void RevokeWebDeployPublishingAccessAsync(string siteId, string accountName, object userState) - { - if ((this.RevokeWebDeployPublishingAccessOperationCompleted == null)) - { - this.RevokeWebDeployPublishingAccessOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRevokeWebDeployPublishingAccessOperationCompleted); - } - this.InvokeAsync("RevokeWebDeployPublishingAccess", new object[] { - siteId, - accountName}, this.RevokeWebDeployPublishingAccessOperationCompleted, userState); - } - - private void OnRevokeWebDeployPublishingAccessOperationCompleted(object arg) - { - if ((this.RevokeWebDeployPublishingAccessCompleted != null)) - { - System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); - this.RevokeWebDeployPublishingAccessCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); - } - } - - /// - [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/RevokeWebManagementAccess", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/RevokeWebManagementAccess", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] public void RevokeWebManagementAccess(string siteId, string accountName) { this.Invoke("RevokeWebManagementAccess", new object[] { siteId, @@ -3548,249 +3750,211 @@ namespace WebsitePanel.Providers.Web { this.ChangeWebManagementAccessPasswordCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/generateCSR", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SSLCertificate generateCSR(SSLCertificate certificate) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/generateCSR", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SSLCertificate generateCSR(SSLCertificate certificate) { object[] results = this.Invoke("generateCSR", new object[] { certificate}); return ((SSLCertificate)(results[0])); } - + /// - public System.IAsyncResult BegingenerateCSR(SSLCertificate certificate, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BegingenerateCSR(SSLCertificate certificate, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("generateCSR", new object[] { certificate}, callback, asyncState); } - + /// - public SSLCertificate EndgenerateCSR(System.IAsyncResult asyncResult) - { + public SSLCertificate EndgenerateCSR(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SSLCertificate)(results[0])); } - + /// - public void generateCSRAsync(SSLCertificate certificate) - { + public void generateCSRAsync(SSLCertificate certificate) { this.generateCSRAsync(certificate, null); } - + /// - public void generateCSRAsync(SSLCertificate certificate, object userState) - { - if ((this.generateCSROperationCompleted == null)) - { + public void generateCSRAsync(SSLCertificate certificate, object userState) { + if ((this.generateCSROperationCompleted == null)) { this.generateCSROperationCompleted = new System.Threading.SendOrPostCallback(this.OngenerateCSROperationCompleted); } this.InvokeAsync("generateCSR", new object[] { certificate}, this.generateCSROperationCompleted, userState); } - - private void OngenerateCSROperationCompleted(object arg) - { - if ((this.generateCSRCompleted != null)) - { + + private void OngenerateCSROperationCompleted(object arg) { + if ((this.generateCSRCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.generateCSRCompleted(this, new generateCSRCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/generateRenewalCSR", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SSLCertificate generateRenewalCSR(SSLCertificate certificate) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/generateRenewalCSR", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SSLCertificate generateRenewalCSR(SSLCertificate certificate) { object[] results = this.Invoke("generateRenewalCSR", new object[] { certificate}); return ((SSLCertificate)(results[0])); } - + /// - public System.IAsyncResult BegingenerateRenewalCSR(SSLCertificate certificate, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BegingenerateRenewalCSR(SSLCertificate certificate, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("generateRenewalCSR", new object[] { certificate}, callback, asyncState); } - + /// - public SSLCertificate EndgenerateRenewalCSR(System.IAsyncResult asyncResult) - { + public SSLCertificate EndgenerateRenewalCSR(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SSLCertificate)(results[0])); } - + /// - public void generateRenewalCSRAsync(SSLCertificate certificate) - { + public void generateRenewalCSRAsync(SSLCertificate certificate) { this.generateRenewalCSRAsync(certificate, null); } - + /// - public void generateRenewalCSRAsync(SSLCertificate certificate, object userState) - { - if ((this.generateRenewalCSROperationCompleted == null)) - { + public void generateRenewalCSRAsync(SSLCertificate certificate, object userState) { + if ((this.generateRenewalCSROperationCompleted == null)) { this.generateRenewalCSROperationCompleted = new System.Threading.SendOrPostCallback(this.OngenerateRenewalCSROperationCompleted); } this.InvokeAsync("generateRenewalCSR", new object[] { certificate}, this.generateRenewalCSROperationCompleted, userState); } - - private void OngenerateRenewalCSROperationCompleted(object arg) - { - if ((this.generateRenewalCSRCompleted != null)) - { + + private void OngenerateRenewalCSROperationCompleted(object arg) { + if ((this.generateRenewalCSRCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.generateRenewalCSRCompleted(this, new generateRenewalCSRCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/getCertificate", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SSLCertificate getCertificate(WebSite site) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/getCertificate", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SSLCertificate getCertificate(WebSite site) { object[] results = this.Invoke("getCertificate", new object[] { site}); return ((SSLCertificate)(results[0])); } - + /// - public System.IAsyncResult BegingetCertificate(WebSite site, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BegingetCertificate(WebSite site, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("getCertificate", new object[] { site}, callback, asyncState); } - + /// - public SSLCertificate EndgetCertificate(System.IAsyncResult asyncResult) - { + public SSLCertificate EndgetCertificate(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SSLCertificate)(results[0])); } - + /// - public void getCertificateAsync(WebSite site) - { + public void getCertificateAsync(WebSite site) { this.getCertificateAsync(site, null); } - + /// - public void getCertificateAsync(WebSite site, object userState) - { - if ((this.getCertificateOperationCompleted == null)) - { + public void getCertificateAsync(WebSite site, object userState) { + if ((this.getCertificateOperationCompleted == null)) { this.getCertificateOperationCompleted = new System.Threading.SendOrPostCallback(this.OngetCertificateOperationCompleted); } this.InvokeAsync("getCertificate", new object[] { site}, this.getCertificateOperationCompleted, userState); } - - private void OngetCertificateOperationCompleted(object arg) - { - if ((this.getCertificateCompleted != null)) - { + + private void OngetCertificateOperationCompleted(object arg) { + if ((this.getCertificateCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.getCertificateCompleted(this, new getCertificateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/installCertificate", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SSLCertificate installCertificate(SSLCertificate certificate, WebSite website) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/installCertificate", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SSLCertificate installCertificate(SSLCertificate certificate, WebSite website) { object[] results = this.Invoke("installCertificate", new object[] { certificate, website}); return ((SSLCertificate)(results[0])); } - + /// - public System.IAsyncResult BegininstallCertificate(SSLCertificate certificate, WebSite website, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BegininstallCertificate(SSLCertificate certificate, WebSite website, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("installCertificate", new object[] { certificate, website}, callback, asyncState); } - + /// - public SSLCertificate EndinstallCertificate(System.IAsyncResult asyncResult) - { + public SSLCertificate EndinstallCertificate(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SSLCertificate)(results[0])); } - + /// - public void installCertificateAsync(SSLCertificate certificate, WebSite website) - { + public void installCertificateAsync(SSLCertificate certificate, WebSite website) { this.installCertificateAsync(certificate, website, null); } - + /// - public void installCertificateAsync(SSLCertificate certificate, WebSite website, object userState) - { - if ((this.installCertificateOperationCompleted == null)) - { + public void installCertificateAsync(SSLCertificate certificate, WebSite website, object userState) { + if ((this.installCertificateOperationCompleted == null)) { this.installCertificateOperationCompleted = new System.Threading.SendOrPostCallback(this.OninstallCertificateOperationCompleted); } this.InvokeAsync("installCertificate", new object[] { certificate, website}, this.installCertificateOperationCompleted, userState); } - - private void OninstallCertificateOperationCompleted(object arg) - { - if ((this.installCertificateCompleted != null)) - { + + private void OninstallCertificateOperationCompleted(object arg) { + if ((this.installCertificateCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.installCertificateCompleted(this, new installCertificateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/installPFX", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SSLCertificate installPFX([System.Xml.Serialization.XmlElementAttribute(DataType = "base64Binary")] byte[] certificate, string password, WebSite website) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/installPFX", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SSLCertificate installPFX([System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")] byte[] certificate, string password, WebSite website) { object[] results = this.Invoke("installPFX", new object[] { certificate, password, website}); return ((SSLCertificate)(results[0])); } - + /// - public System.IAsyncResult BegininstallPFX(byte[] certificate, string password, WebSite website, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BegininstallPFX(byte[] certificate, string password, WebSite website, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("installPFX", new object[] { certificate, password, website}, callback, asyncState); } - + /// - public SSLCertificate EndinstallPFX(System.IAsyncResult asyncResult) - { + public SSLCertificate EndinstallPFX(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SSLCertificate)(results[0])); } - + /// - public void installPFXAsync(byte[] certificate, string password, WebSite website) - { + public void installPFXAsync(byte[] certificate, string password, WebSite website) { this.installPFXAsync(certificate, password, website, null); } - + /// - public void installPFXAsync(byte[] certificate, string password, WebSite website, object userState) - { - if ((this.installPFXOperationCompleted == null)) - { + public void installPFXAsync(byte[] certificate, string password, WebSite website, object userState) { + if ((this.installPFXOperationCompleted == null)) { this.installPFXOperationCompleted = new System.Threading.SendOrPostCallback(this.OninstallPFXOperationCompleted); } this.InvokeAsync("installPFX", new object[] { @@ -3798,265 +3962,223 @@ namespace WebsitePanel.Providers.Web { password, website}, this.installPFXOperationCompleted, userState); } - - private void OninstallPFXOperationCompleted(object arg) - { - if ((this.installPFXCompleted != null)) - { + + private void OninstallPFXOperationCompleted(object arg) { + if ((this.installPFXCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.installPFXCompleted(this, new installPFXCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/exportCertificate", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - [return: System.Xml.Serialization.XmlElementAttribute(DataType = "base64Binary")] - public byte[] exportCertificate(string serialNumber, string password) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/exportCertificate", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + [return: System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")] + public byte[] exportCertificate(string serialNumber, string password) { object[] results = this.Invoke("exportCertificate", new object[] { serialNumber, password}); return ((byte[])(results[0])); } - + /// - public System.IAsyncResult BeginexportCertificate(string serialNumber, string password, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginexportCertificate(string serialNumber, string password, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("exportCertificate", new object[] { serialNumber, password}, callback, asyncState); } - + /// - public byte[] EndexportCertificate(System.IAsyncResult asyncResult) - { + public byte[] EndexportCertificate(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((byte[])(results[0])); } - + /// - public void exportCertificateAsync(string serialNumber, string password) - { + public void exportCertificateAsync(string serialNumber, string password) { this.exportCertificateAsync(serialNumber, password, null); } - + /// - public void exportCertificateAsync(string serialNumber, string password, object userState) - { - if ((this.exportCertificateOperationCompleted == null)) - { + public void exportCertificateAsync(string serialNumber, string password, object userState) { + if ((this.exportCertificateOperationCompleted == null)) { this.exportCertificateOperationCompleted = new System.Threading.SendOrPostCallback(this.OnexportCertificateOperationCompleted); } this.InvokeAsync("exportCertificate", new object[] { serialNumber, password}, this.exportCertificateOperationCompleted, userState); } - - private void OnexportCertificateOperationCompleted(object arg) - { - if ((this.exportCertificateCompleted != null)) - { + + private void OnexportCertificateOperationCompleted(object arg) { + if ((this.exportCertificateCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.exportCertificateCompleted(this, new exportCertificateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/getServerCertificates", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SSLCertificate[] getServerCertificates() - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/getServerCertificates", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SSLCertificate[] getServerCertificates() { object[] results = this.Invoke("getServerCertificates", new object[0]); return ((SSLCertificate[])(results[0])); } - + /// - public System.IAsyncResult BegingetServerCertificates(System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BegingetServerCertificates(System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("getServerCertificates", new object[0], callback, asyncState); } - + /// - public SSLCertificate[] EndgetServerCertificates(System.IAsyncResult asyncResult) - { + public SSLCertificate[] EndgetServerCertificates(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SSLCertificate[])(results[0])); } - + /// - public void getServerCertificatesAsync() - { + public void getServerCertificatesAsync() { this.getServerCertificatesAsync(null); } - + /// - public void getServerCertificatesAsync(object userState) - { - if ((this.getServerCertificatesOperationCompleted == null)) - { + public void getServerCertificatesAsync(object userState) { + if ((this.getServerCertificatesOperationCompleted == null)) { this.getServerCertificatesOperationCompleted = new System.Threading.SendOrPostCallback(this.OngetServerCertificatesOperationCompleted); } this.InvokeAsync("getServerCertificates", new object[0], this.getServerCertificatesOperationCompleted, userState); } - - private void OngetServerCertificatesOperationCompleted(object arg) - { - if ((this.getServerCertificatesCompleted != null)) - { + + private void OngetServerCertificatesOperationCompleted(object arg) { + if ((this.getServerCertificatesCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.getServerCertificatesCompleted(this, new getServerCertificatesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/DeleteCertificate", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public ResultObject DeleteCertificate(SSLCertificate certificate, WebSite website) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/DeleteCertificate", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public ResultObject DeleteCertificate(SSLCertificate certificate, WebSite website) { object[] results = this.Invoke("DeleteCertificate", new object[] { certificate, website}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginDeleteCertificate(SSLCertificate certificate, WebSite website, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginDeleteCertificate(SSLCertificate certificate, WebSite website, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("DeleteCertificate", new object[] { certificate, website}, callback, asyncState); } - + /// - public ResultObject EndDeleteCertificate(System.IAsyncResult asyncResult) - { + public ResultObject EndDeleteCertificate(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void DeleteCertificateAsync(SSLCertificate certificate, WebSite website) - { + public void DeleteCertificateAsync(SSLCertificate certificate, WebSite website) { this.DeleteCertificateAsync(certificate, website, null); } - + /// - public void DeleteCertificateAsync(SSLCertificate certificate, WebSite website, object userState) - { - if ((this.DeleteCertificateOperationCompleted == null)) - { + public void DeleteCertificateAsync(SSLCertificate certificate, WebSite website, object userState) { + if ((this.DeleteCertificateOperationCompleted == null)) { this.DeleteCertificateOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteCertificateOperationCompleted); } this.InvokeAsync("DeleteCertificate", new object[] { certificate, website}, this.DeleteCertificateOperationCompleted, userState); } - - private void OnDeleteCertificateOperationCompleted(object arg) - { - if ((this.DeleteCertificateCompleted != null)) - { + + private void OnDeleteCertificateOperationCompleted(object arg) { + if ((this.DeleteCertificateCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.DeleteCertificateCompleted(this, new DeleteCertificateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ImportCertificate", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SSLCertificate ImportCertificate(WebSite website) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ImportCertificate", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SSLCertificate ImportCertificate(WebSite website) { object[] results = this.Invoke("ImportCertificate", new object[] { website}); return ((SSLCertificate)(results[0])); } - + /// - public System.IAsyncResult BeginImportCertificate(WebSite website, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginImportCertificate(WebSite website, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("ImportCertificate", new object[] { website}, callback, asyncState); } - + /// - public SSLCertificate EndImportCertificate(System.IAsyncResult asyncResult) - { + public SSLCertificate EndImportCertificate(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SSLCertificate)(results[0])); } - + /// - public void ImportCertificateAsync(WebSite website) - { + public void ImportCertificateAsync(WebSite website) { this.ImportCertificateAsync(website, null); } - + /// - public void ImportCertificateAsync(WebSite website, object userState) - { - if ((this.ImportCertificateOperationCompleted == null)) - { + public void ImportCertificateAsync(WebSite website, object userState) { + if ((this.ImportCertificateOperationCompleted == null)) { this.ImportCertificateOperationCompleted = new System.Threading.SendOrPostCallback(this.OnImportCertificateOperationCompleted); } this.InvokeAsync("ImportCertificate", new object[] { website}, this.ImportCertificateOperationCompleted, userState); } - - private void OnImportCertificateOperationCompleted(object arg) - { - if ((this.ImportCertificateCompleted != null)) - { + + private void OnImportCertificateOperationCompleted(object arg) { + if ((this.ImportCertificateCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.ImportCertificateCompleted(this, new ImportCertificateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/CheckCertificate", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public bool CheckCertificate(WebSite webSite) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/CheckCertificate", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public bool CheckCertificate(WebSite webSite) { object[] results = this.Invoke("CheckCertificate", new object[] { webSite}); return ((bool)(results[0])); } - + /// - public System.IAsyncResult BeginCheckCertificate(WebSite webSite, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginCheckCertificate(WebSite webSite, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("CheckCertificate", new object[] { webSite}, callback, asyncState); } - + /// - public bool EndCheckCertificate(System.IAsyncResult asyncResult) - { + public bool EndCheckCertificate(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((bool)(results[0])); } - + /// - public void CheckCertificateAsync(WebSite webSite) - { + public void CheckCertificateAsync(WebSite webSite) { this.CheckCertificateAsync(webSite, null); } - + /// - public void CheckCertificateAsync(WebSite webSite, object userState) - { - if ((this.CheckCertificateOperationCompleted == null)) - { + public void CheckCertificateAsync(WebSite webSite, object userState) { + if ((this.CheckCertificateOperationCompleted == null)) { this.CheckCertificateOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCheckCertificateOperationCompleted); } this.InvokeAsync("CheckCertificate", new object[] { webSite}, this.CheckCertificateOperationCompleted, userState); } - - private void OnCheckCertificateOperationCompleted(object arg) - { - if ((this.CheckCertificateCompleted != null)) - { + + private void OnCheckCertificateOperationCompleted(object arg) { + if ((this.CheckCertificateCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.CheckCertificateCompleted(this, new CheckCertificateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } @@ -4068,49 +4190,16 @@ namespace WebsitePanel.Providers.Web { } } - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void ChangeSiteStateCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetSiteStateCompletedEventHandler(object sender, GetSiteStateCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetSiteStateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4132,11 +4221,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetSiteIdCompletedEventHandler(object sender, GetSiteIdCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetSiteIdCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4158,11 +4247,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetSitesAccountsCompletedEventHandler(object sender, GetSitesAccountsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetSitesAccountsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4184,11 +4273,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void SiteExistsCompletedEventHandler(object sender, SiteExistsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class SiteExistsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4210,11 +4299,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetSitesCompletedEventHandler(object sender, GetSitesCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetSitesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4236,11 +4325,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetSiteCompletedEventHandler(object sender, GetSiteCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetSiteCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4262,11 +4351,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetSiteBindingsCompletedEventHandler(object sender, GetSiteBindingsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetSiteBindingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4288,11 +4377,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void CreateSiteCompletedEventHandler(object sender, CreateSiteCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class CreateSiteCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4314,23 +4403,23 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateSiteCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateSiteBindingsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteSiteCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void VirtualDirectoryExistsCompletedEventHandler(object sender, VirtualDirectoryExistsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class VirtualDirectoryExistsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4352,11 +4441,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetVirtualDirectoriesCompletedEventHandler(object sender, GetVirtualDirectoriesCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetVirtualDirectoriesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4378,11 +4467,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetVirtualDirectoryCompletedEventHandler(object sender, GetVirtualDirectoryCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetVirtualDirectoryCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4404,23 +4493,23 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void CreateVirtualDirectoryCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateVirtualDirectoryCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteVirtualDirectoryCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void IsFrontPageSystemInstalledCompletedEventHandler(object sender, IsFrontPageSystemInstalledCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class IsFrontPageSystemInstalledCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4442,11 +4531,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void IsFrontPageInstalledCompletedEventHandler(object sender, IsFrontPageInstalledCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class IsFrontPageInstalledCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4468,11 +4557,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void InstallFrontPageCompletedEventHandler(object sender, InstallFrontPageCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class InstallFrontPageCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4494,19 +4583,19 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UninstallFrontPageCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void ChangeFrontPagePasswordCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void IsColdFusionSystemInstalledCompletedEventHandler(object sender, IsColdFusionSystemInstalledCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class IsColdFusionSystemInstalledCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4528,23 +4617,23 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GrantWebSiteAccessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void InstallSecuredFoldersCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UninstallSecuredFoldersCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetFoldersCompletedEventHandler(object sender, GetFoldersCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetFoldersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4566,11 +4655,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetFolderCompletedEventHandler(object sender, GetFolderCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetFolderCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4592,19 +4681,19 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateFolderCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteFolderCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetUsersCompletedEventHandler(object sender, GetUsersCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetUsersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4626,11 +4715,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetUserCompletedEventHandler(object sender, GetUserCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4652,19 +4741,19 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateUserCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteUserCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGroupsCompletedEventHandler(object sender, GetGroupsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGroupsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4686,11 +4775,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGroupCompletedEventHandler(object sender, GetGroupCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGroupCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4712,19 +4801,19 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateGroupCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteGroupCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetHeliconApeStatusCompletedEventHandler(object sender, GetHeliconApeStatusCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetHeliconApeStatusCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4746,23 +4835,23 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void InstallHeliconApeCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void EnableHeliconApeCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DisableHeliconApeCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetHeliconApeFoldersCompletedEventHandler(object sender, GetHeliconApeFoldersCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetHeliconApeFoldersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4784,11 +4873,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetHeliconApeHttpdFolderCompletedEventHandler(object sender, GetHeliconApeHttpdFolderCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetHeliconApeHttpdFolderCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4810,11 +4899,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetHeliconApeFolderCompletedEventHandler(object sender, GetHeliconApeFolderCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetHeliconApeFolderCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4836,23 +4925,23 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateHeliconApeFolderCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateHeliconApeHttpdFolderCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteHeliconApeFolderCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetHeliconApeUsersCompletedEventHandler(object sender, GetHeliconApeUsersCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetHeliconApeUsersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4874,11 +4963,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetHeliconApeUserCompletedEventHandler(object sender, GetHeliconApeUserCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetHeliconApeUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4900,19 +4989,19 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateHeliconApeUserCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteHeliconApeUserCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetHeliconApeGroupsCompletedEventHandler(object sender, GetHeliconApeGroupsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetHeliconApeGroupsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4934,11 +5023,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetHeliconApeGroupCompletedEventHandler(object sender, GetHeliconApeGroupCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetHeliconApeGroupCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4960,19 +5049,61 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void UpdateHeliconApeGroupCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GrantWebDeployPublishingAccessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void RevokeWebDeployPublishingAccessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteHeliconApeGroupCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void InitFeedsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void SetResourceLanguageCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetGalleryLanguagesCompletedEventHandler(object sender, GetGalleryLanguagesCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetGalleryLanguagesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetGalleryLanguagesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public GalleryLanguagesResult Result { + get { + this.RaiseExceptionIfNecessary(); + return ((GalleryLanguagesResult)(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryCategoriesCompletedEventHandler(object sender, GetGalleryCategoriesCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryCategoriesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -4994,11 +5125,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationsCompletedEventHandler(object sender, GetGalleryApplicationsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5020,11 +5151,37 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetGalleryApplicationsFilteredCompletedEventHandler(object sender, GetGalleryApplicationsFilteredCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetGalleryApplicationsFilteredCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetGalleryApplicationsFilteredCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public GalleryApplicationsResult Result { + get { + this.RaiseExceptionIfNecessary(); + return ((GalleryApplicationsResult)(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void IsMsDeployInstalledCompletedEventHandler(object sender, IsMsDeployInstalledCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class IsMsDeployInstalledCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5046,11 +5203,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationCompletedEventHandler(object sender, GetGalleryApplicationCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5072,11 +5229,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationStatusCompletedEventHandler(object sender, GetGalleryApplicationStatusCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationStatusCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5098,11 +5255,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DownloadGalleryApplicationCompletedEventHandler(object sender, DownloadGalleryApplicationCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class DownloadGalleryApplicationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5124,11 +5281,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetGalleryApplicationParametersCompletedEventHandler(object sender, GetGalleryApplicationParametersCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class GetGalleryApplicationParametersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5150,11 +5307,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void InstallGalleryApplicationCompletedEventHandler(object sender, InstallGalleryApplicationCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class InstallGalleryApplicationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5176,11 +5333,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void CheckWebManagementAccountExistsCompletedEventHandler(object sender, CheckWebManagementAccountExistsCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class CheckWebManagementAccountExistsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5202,11 +5359,11 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void CheckWebManagementPasswordComplexityCompletedEventHandler(object sender, CheckWebManagementPasswordComplexityCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class CheckWebManagementPasswordComplexityCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { @@ -5228,319 +5385,271 @@ namespace WebsitePanel.Providers.Web { } /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GrantWebManagementAccessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] - public delegate void GrantWebDeployPublishingAccessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); - - /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] - public delegate void RevokeWebDeployPublishingAccessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); - - /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] - public delegate void RevokeWebManagementAccessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void RevokeWebManagementAccessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void ChangeWebManagementAccessPasswordCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void generateCSRCompletedEventHandler(object sender, generateCSRCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class generateCSRCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class generateCSRCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal generateCSRCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal generateCSRCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SSLCertificate Result - { - get - { + public SSLCertificate Result { + get { this.RaiseExceptionIfNecessary(); return ((SSLCertificate)(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void generateRenewalCSRCompletedEventHandler(object sender, generateRenewalCSRCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class generateRenewalCSRCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class generateRenewalCSRCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal generateRenewalCSRCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal generateRenewalCSRCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SSLCertificate Result - { - get - { + public SSLCertificate Result { + get { this.RaiseExceptionIfNecessary(); return ((SSLCertificate)(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void getCertificateCompletedEventHandler(object sender, getCertificateCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class getCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class getCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal getCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal getCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SSLCertificate Result - { - get - { + public SSLCertificate Result { + get { this.RaiseExceptionIfNecessary(); return ((SSLCertificate)(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void installCertificateCompletedEventHandler(object sender, installCertificateCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class installCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class installCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal installCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal installCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SSLCertificate Result - { - get - { + public SSLCertificate Result { + get { this.RaiseExceptionIfNecessary(); return ((SSLCertificate)(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void installPFXCompletedEventHandler(object sender, installPFXCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class installPFXCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class installPFXCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal installPFXCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal installPFXCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SSLCertificate Result - { - get - { + public SSLCertificate Result { + get { this.RaiseExceptionIfNecessary(); return ((SSLCertificate)(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void exportCertificateCompletedEventHandler(object sender, exportCertificateCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class exportCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class exportCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal exportCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal exportCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public byte[] Result - { - get - { + public byte[] Result { + get { this.RaiseExceptionIfNecessary(); return ((byte[])(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void getServerCertificatesCompletedEventHandler(object sender, getServerCertificatesCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class getServerCertificatesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class getServerCertificatesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal getServerCertificatesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal getServerCertificatesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SSLCertificate[] Result - { - get - { + public SSLCertificate[] Result { + get { this.RaiseExceptionIfNecessary(); return ((SSLCertificate[])(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void DeleteCertificateCompletedEventHandler(object sender, DeleteCertificateCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class DeleteCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class DeleteCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal DeleteCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal DeleteCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public ResultObject Result - { - get - { + public ResultObject Result { + get { this.RaiseExceptionIfNecessary(); return ((ResultObject)(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void ImportCertificateCompletedEventHandler(object sender, ImportCertificateCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class ImportCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class ImportCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal ImportCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal ImportCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SSLCertificate Result - { - get - { + public SSLCertificate Result { + get { this.RaiseExceptionIfNecessary(); return ((SSLCertificate)(this.results[0])); } } } - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void CheckCertificateCompletedEventHandler(object sender, CheckCertificateCompletedEventArgs e); - + /// - [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class CheckCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class CheckCertificateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal CheckCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal CheckCertificateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public bool Result - { - get - { + public bool Result { + get { this.RaiseExceptionIfNecessary(); return ((bool)(this.results[0])); } diff --git a/WebsitePanel/Sources/WebsitePanel.Server.Client/WindowsServerProxy.cs b/WebsitePanel/Sources/WebsitePanel.Server.Client/WindowsServerProxy.cs index cef73fa6..57e41dd1 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server.Client/WindowsServerProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server.Client/WindowsServerProxy.cs @@ -47,497 +47,914 @@ namespace WebsitePanel.Server using System.Web.Services.Protocols; using System; using System.Xml.Serialization; - - + using WebsitePanel.Providers; + + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - [System.Web.Services.WebServiceBindingAttribute(Name = "WindowsServerSoap", Namespace = "http://smbsaas/websitepanel/server/")] - public partial class WindowsServer : Microsoft.Web.Services3.WebServicesClientProtocol - { - + [System.Web.Services.WebServiceBindingAttribute(Name="WindowsServerSoap", Namespace="http://smbsaas/websitepanel/server/")] + public partial class WindowsServer : Microsoft.Web.Services3.WebServicesClientProtocol { + private System.Threading.SendOrPostCallback GetTerminalServicesSessionsOperationCompleted; - + private System.Threading.SendOrPostCallback CloseTerminalServicesSessionOperationCompleted; - + private System.Threading.SendOrPostCallback GetWindowsProcessesOperationCompleted; - + private System.Threading.SendOrPostCallback TerminateWindowsProcessOperationCompleted; - + private System.Threading.SendOrPostCallback GetWindowsServicesOperationCompleted; - + private System.Threading.SendOrPostCallback ChangeWindowsServiceStatusOperationCompleted; - + + private System.Threading.SendOrPostCallback GetWPIProductsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIProductsFilteredOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPITabsOperationCompleted; + + private System.Threading.SendOrPostCallback InitWPIFeedsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIKeywordsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIProductsWithDependenciesOperationCompleted; + + private System.Threading.SendOrPostCallback InstallWPIProductsOperationCompleted; + + private System.Threading.SendOrPostCallback CancelInstallWPIProductsOperationCompleted; + + private System.Threading.SendOrPostCallback GetWPIStatusOperationCompleted; + + private System.Threading.SendOrPostCallback WpiGetLogFileDirectoryOperationCompleted; + + private System.Threading.SendOrPostCallback WpiGetLogsInDirectoryOperationCompleted; + private System.Threading.SendOrPostCallback GetLogNamesOperationCompleted; - + private System.Threading.SendOrPostCallback GetLogEntriesOperationCompleted; - + private System.Threading.SendOrPostCallback GetLogEntriesPagedOperationCompleted; - + private System.Threading.SendOrPostCallback ClearLogOperationCompleted; - + private System.Threading.SendOrPostCallback RebootSystemOperationCompleted; - + private System.Threading.SendOrPostCallback ExecuteSystemCommandOperationCompleted; - + /// - public WindowsServer() - { - this.Url = "http://localhost/WebsitePanelServer/WindowsServer.asmx"; + public WindowsServer() { + this.Url = "http://localhost:9003/WindowsServer.asmx"; } - + /// public event GetTerminalServicesSessionsCompletedEventHandler GetTerminalServicesSessionsCompleted; - + /// public event CloseTerminalServicesSessionCompletedEventHandler CloseTerminalServicesSessionCompleted; - + /// public event GetWindowsProcessesCompletedEventHandler GetWindowsProcessesCompleted; - + /// public event TerminateWindowsProcessCompletedEventHandler TerminateWindowsProcessCompleted; - + /// public event GetWindowsServicesCompletedEventHandler GetWindowsServicesCompleted; - + /// public event ChangeWindowsServiceStatusCompletedEventHandler ChangeWindowsServiceStatusCompleted; - + + /// + public event GetWPIProductsCompletedEventHandler GetWPIProductsCompleted; + + /// + public event GetWPIProductsFilteredCompletedEventHandler GetWPIProductsFilteredCompleted; + + /// + public event GetWPITabsCompletedEventHandler GetWPITabsCompleted; + + /// + public event InitWPIFeedsCompletedEventHandler InitWPIFeedsCompleted; + + /// + public event GetWPIKeywordsCompletedEventHandler GetWPIKeywordsCompleted; + + /// + public event GetWPIProductsWithDependenciesCompletedEventHandler GetWPIProductsWithDependenciesCompleted; + + /// + public event InstallWPIProductsCompletedEventHandler InstallWPIProductsCompleted; + + /// + public event CancelInstallWPIProductsCompletedEventHandler CancelInstallWPIProductsCompleted; + + /// + public event GetWPIStatusCompletedEventHandler GetWPIStatusCompleted; + + /// + public event WpiGetLogFileDirectoryCompletedEventHandler WpiGetLogFileDirectoryCompleted; + + /// + public event WpiGetLogsInDirectoryCompletedEventHandler WpiGetLogsInDirectoryCompleted; + /// public event GetLogNamesCompletedEventHandler GetLogNamesCompleted; - + /// public event GetLogEntriesCompletedEventHandler GetLogEntriesCompleted; - + /// public event GetLogEntriesPagedCompletedEventHandler GetLogEntriesPagedCompleted; - + /// public event ClearLogCompletedEventHandler ClearLogCompleted; - + /// public event RebootSystemCompletedEventHandler RebootSystemCompleted; - + /// public event ExecuteSystemCommandCompletedEventHandler ExecuteSystemCommandCompleted; - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetTerminalServicesSessions", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public TerminalSession[] GetTerminalServicesSessions() - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetTerminalServicesSessions", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public TerminalSession[] GetTerminalServicesSessions() { object[] results = this.Invoke("GetTerminalServicesSessions", new object[0]); return ((TerminalSession[])(results[0])); } - + /// - public System.IAsyncResult BeginGetTerminalServicesSessions(System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetTerminalServicesSessions(System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetTerminalServicesSessions", new object[0], callback, asyncState); } - + /// - public TerminalSession[] EndGetTerminalServicesSessions(System.IAsyncResult asyncResult) - { + public TerminalSession[] EndGetTerminalServicesSessions(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((TerminalSession[])(results[0])); } - + /// - public void GetTerminalServicesSessionsAsync() - { + public void GetTerminalServicesSessionsAsync() { this.GetTerminalServicesSessionsAsync(null); } - + /// - public void GetTerminalServicesSessionsAsync(object userState) - { - if ((this.GetTerminalServicesSessionsOperationCompleted == null)) - { + public void GetTerminalServicesSessionsAsync(object userState) { + if ((this.GetTerminalServicesSessionsOperationCompleted == null)) { this.GetTerminalServicesSessionsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetTerminalServicesSessionsOperationCompleted); } this.InvokeAsync("GetTerminalServicesSessions", new object[0], this.GetTerminalServicesSessionsOperationCompleted, userState); } - - private void OnGetTerminalServicesSessionsOperationCompleted(object arg) - { - if ((this.GetTerminalServicesSessionsCompleted != null)) - { + + private void OnGetTerminalServicesSessionsOperationCompleted(object arg) { + if ((this.GetTerminalServicesSessionsCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetTerminalServicesSessionsCompleted(this, new GetTerminalServicesSessionsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/CloseTerminalServicesSession", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public void CloseTerminalServicesSession(int sessionId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/CloseTerminalServicesSession", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void CloseTerminalServicesSession(int sessionId) { this.Invoke("CloseTerminalServicesSession", new object[] { sessionId}); } - + /// - public System.IAsyncResult BeginCloseTerminalServicesSession(int sessionId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginCloseTerminalServicesSession(int sessionId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("CloseTerminalServicesSession", new object[] { sessionId}, callback, asyncState); } - + /// - public void EndCloseTerminalServicesSession(System.IAsyncResult asyncResult) - { + public void EndCloseTerminalServicesSession(System.IAsyncResult asyncResult) { this.EndInvoke(asyncResult); } - + /// - public void CloseTerminalServicesSessionAsync(int sessionId) - { + public void CloseTerminalServicesSessionAsync(int sessionId) { this.CloseTerminalServicesSessionAsync(sessionId, null); } - + /// - public void CloseTerminalServicesSessionAsync(int sessionId, object userState) - { - if ((this.CloseTerminalServicesSessionOperationCompleted == null)) - { + public void CloseTerminalServicesSessionAsync(int sessionId, object userState) { + if ((this.CloseTerminalServicesSessionOperationCompleted == null)) { this.CloseTerminalServicesSessionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCloseTerminalServicesSessionOperationCompleted); } this.InvokeAsync("CloseTerminalServicesSession", new object[] { sessionId}, this.CloseTerminalServicesSessionOperationCompleted, userState); } - - private void OnCloseTerminalServicesSessionOperationCompleted(object arg) - { - if ((this.CloseTerminalServicesSessionCompleted != null)) - { + + private void OnCloseTerminalServicesSessionOperationCompleted(object arg) { + if ((this.CloseTerminalServicesSessionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.CloseTerminalServicesSessionCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWindowsProcesses", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public WindowsProcess[] GetWindowsProcesses() - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWindowsProcesses", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WindowsProcess[] GetWindowsProcesses() { object[] results = this.Invoke("GetWindowsProcesses", new object[0]); return ((WindowsProcess[])(results[0])); } - + /// - public System.IAsyncResult BeginGetWindowsProcesses(System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetWindowsProcesses(System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetWindowsProcesses", new object[0], callback, asyncState); } - + /// - public WindowsProcess[] EndGetWindowsProcesses(System.IAsyncResult asyncResult) - { + public WindowsProcess[] EndGetWindowsProcesses(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((WindowsProcess[])(results[0])); } - + /// - public void GetWindowsProcessesAsync() - { + public void GetWindowsProcessesAsync() { this.GetWindowsProcessesAsync(null); } - + /// - public void GetWindowsProcessesAsync(object userState) - { - if ((this.GetWindowsProcessesOperationCompleted == null)) - { + public void GetWindowsProcessesAsync(object userState) { + if ((this.GetWindowsProcessesOperationCompleted == null)) { this.GetWindowsProcessesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWindowsProcessesOperationCompleted); } this.InvokeAsync("GetWindowsProcesses", new object[0], this.GetWindowsProcessesOperationCompleted, userState); } - - private void OnGetWindowsProcessesOperationCompleted(object arg) - { - if ((this.GetWindowsProcessesCompleted != null)) - { + + private void OnGetWindowsProcessesOperationCompleted(object arg) { + if ((this.GetWindowsProcessesCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetWindowsProcessesCompleted(this, new GetWindowsProcessesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/TerminateWindowsProcess", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public void TerminateWindowsProcess(int pid) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/TerminateWindowsProcess", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void TerminateWindowsProcess(int pid) { this.Invoke("TerminateWindowsProcess", new object[] { pid}); } - + /// - public System.IAsyncResult BeginTerminateWindowsProcess(int pid, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginTerminateWindowsProcess(int pid, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("TerminateWindowsProcess", new object[] { pid}, callback, asyncState); } - + /// - public void EndTerminateWindowsProcess(System.IAsyncResult asyncResult) - { + public void EndTerminateWindowsProcess(System.IAsyncResult asyncResult) { this.EndInvoke(asyncResult); } - + /// - public void TerminateWindowsProcessAsync(int pid) - { + public void TerminateWindowsProcessAsync(int pid) { this.TerminateWindowsProcessAsync(pid, null); } - + /// - public void TerminateWindowsProcessAsync(int pid, object userState) - { - if ((this.TerminateWindowsProcessOperationCompleted == null)) - { + public void TerminateWindowsProcessAsync(int pid, object userState) { + if ((this.TerminateWindowsProcessOperationCompleted == null)) { this.TerminateWindowsProcessOperationCompleted = new System.Threading.SendOrPostCallback(this.OnTerminateWindowsProcessOperationCompleted); } this.InvokeAsync("TerminateWindowsProcess", new object[] { pid}, this.TerminateWindowsProcessOperationCompleted, userState); } - - private void OnTerminateWindowsProcessOperationCompleted(object arg) - { - if ((this.TerminateWindowsProcessCompleted != null)) - { + + private void OnTerminateWindowsProcessOperationCompleted(object arg) { + if ((this.TerminateWindowsProcessCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.TerminateWindowsProcessCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWindowsServices", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public WindowsService[] GetWindowsServices() - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWindowsServices", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WindowsService[] GetWindowsServices() { object[] results = this.Invoke("GetWindowsServices", new object[0]); return ((WindowsService[])(results[0])); } - + /// - public System.IAsyncResult BeginGetWindowsServices(System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetWindowsServices(System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetWindowsServices", new object[0], callback, asyncState); } - + /// - public WindowsService[] EndGetWindowsServices(System.IAsyncResult asyncResult) - { + public WindowsService[] EndGetWindowsServices(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((WindowsService[])(results[0])); } - + /// - public void GetWindowsServicesAsync() - { + public void GetWindowsServicesAsync() { this.GetWindowsServicesAsync(null); } - + /// - public void GetWindowsServicesAsync(object userState) - { - if ((this.GetWindowsServicesOperationCompleted == null)) - { + public void GetWindowsServicesAsync(object userState) { + if ((this.GetWindowsServicesOperationCompleted == null)) { this.GetWindowsServicesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWindowsServicesOperationCompleted); } this.InvokeAsync("GetWindowsServices", new object[0], this.GetWindowsServicesOperationCompleted, userState); } - - private void OnGetWindowsServicesOperationCompleted(object arg) - { - if ((this.GetWindowsServicesCompleted != null)) - { + + private void OnGetWindowsServicesOperationCompleted(object arg) { + if ((this.GetWindowsServicesCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetWindowsServicesCompleted(this, new GetWindowsServicesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ChangeWindowsServiceStatus", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public void ChangeWindowsServiceStatus(string id, WindowsServiceStatus status) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ChangeWindowsServiceStatus", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void ChangeWindowsServiceStatus(string id, WindowsServiceStatus status) { this.Invoke("ChangeWindowsServiceStatus", new object[] { id, status}); } - + /// - public System.IAsyncResult BeginChangeWindowsServiceStatus(string id, WindowsServiceStatus status, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginChangeWindowsServiceStatus(string id, WindowsServiceStatus status, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("ChangeWindowsServiceStatus", new object[] { id, status}, callback, asyncState); } - + /// - public void EndChangeWindowsServiceStatus(System.IAsyncResult asyncResult) - { + public void EndChangeWindowsServiceStatus(System.IAsyncResult asyncResult) { this.EndInvoke(asyncResult); } - + /// - public void ChangeWindowsServiceStatusAsync(string id, WindowsServiceStatus status) - { + public void ChangeWindowsServiceStatusAsync(string id, WindowsServiceStatus status) { this.ChangeWindowsServiceStatusAsync(id, status, null); } - + /// - public void ChangeWindowsServiceStatusAsync(string id, WindowsServiceStatus status, object userState) - { - if ((this.ChangeWindowsServiceStatusOperationCompleted == null)) - { + public void ChangeWindowsServiceStatusAsync(string id, WindowsServiceStatus status, object userState) { + if ((this.ChangeWindowsServiceStatusOperationCompleted == null)) { this.ChangeWindowsServiceStatusOperationCompleted = new System.Threading.SendOrPostCallback(this.OnChangeWindowsServiceStatusOperationCompleted); } this.InvokeAsync("ChangeWindowsServiceStatus", new object[] { id, status}, this.ChangeWindowsServiceStatusOperationCompleted, userState); } - - private void OnChangeWindowsServiceStatusOperationCompleted(object arg) - { - if ((this.ChangeWindowsServiceStatusCompleted != null)) - { + + private void OnChangeWindowsServiceStatusOperationCompleted(object arg) { + if ((this.ChangeWindowsServiceStatusCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.ChangeWindowsServiceStatusCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetLogNames", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public string[] GetLogNames() - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWPIProducts", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPIProduct[] GetWPIProducts(string tabId, string keywordId) { + object[] results = this.Invoke("GetWPIProducts", new object[] { + tabId, + keywordId}); + return ((WPIProduct[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIProducts(string tabId, string keywordId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIProducts", new object[] { + tabId, + keywordId}, callback, asyncState); + } + + /// + public WPIProduct[] EndGetWPIProducts(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPIProduct[])(results[0])); + } + + /// + public void GetWPIProductsAsync(string tabId, string keywordId) { + this.GetWPIProductsAsync(tabId, keywordId, null); + } + + /// + public void GetWPIProductsAsync(string tabId, string keywordId, object userState) { + if ((this.GetWPIProductsOperationCompleted == null)) { + this.GetWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsOperationCompleted); + } + this.InvokeAsync("GetWPIProducts", new object[] { + tabId, + keywordId}, this.GetWPIProductsOperationCompleted, userState); + } + + private void OnGetWPIProductsOperationCompleted(object arg) { + if ((this.GetWPIProductsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIProductsCompleted(this, new GetWPIProductsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWPIProductsFiltered", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPIProduct[] GetWPIProductsFiltered(string filter) { + object[] results = this.Invoke("GetWPIProductsFiltered", new object[] { + filter}); + return ((WPIProduct[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIProductsFiltered(string filter, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIProductsFiltered", new object[] { + filter}, callback, asyncState); + } + + /// + public WPIProduct[] EndGetWPIProductsFiltered(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPIProduct[])(results[0])); + } + + /// + public void GetWPIProductsFilteredAsync(string filter) { + this.GetWPIProductsFilteredAsync(filter, null); + } + + /// + public void GetWPIProductsFilteredAsync(string filter, object userState) { + if ((this.GetWPIProductsFilteredOperationCompleted == null)) { + this.GetWPIProductsFilteredOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsFilteredOperationCompleted); + } + this.InvokeAsync("GetWPIProductsFiltered", new object[] { + filter}, this.GetWPIProductsFilteredOperationCompleted, userState); + } + + private void OnGetWPIProductsFilteredOperationCompleted(object arg) { + if ((this.GetWPIProductsFilteredCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIProductsFilteredCompleted(this, new GetWPIProductsFilteredCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWPITabs", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPITab[] GetWPITabs() { + object[] results = this.Invoke("GetWPITabs", new object[0]); + return ((WPITab[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPITabs(System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPITabs", new object[0], callback, asyncState); + } + + /// + public WPITab[] EndGetWPITabs(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPITab[])(results[0])); + } + + /// + public void GetWPITabsAsync() { + this.GetWPITabsAsync(null); + } + + /// + public void GetWPITabsAsync(object userState) { + if ((this.GetWPITabsOperationCompleted == null)) { + this.GetWPITabsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPITabsOperationCompleted); + } + this.InvokeAsync("GetWPITabs", new object[0], this.GetWPITabsOperationCompleted, userState); + } + + private void OnGetWPITabsOperationCompleted(object arg) { + if ((this.GetWPITabsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPITabsCompleted(this, new GetWPITabsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/InitWPIFeeds", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void InitWPIFeeds(string feedUrls) { + this.Invoke("InitWPIFeeds", new object[] { + feedUrls}); + } + + /// + public System.IAsyncResult BeginInitWPIFeeds(string feedUrls, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("InitWPIFeeds", new object[] { + feedUrls}, callback, asyncState); + } + + /// + public void EndInitWPIFeeds(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void InitWPIFeedsAsync(string feedUrls) { + this.InitWPIFeedsAsync(feedUrls, null); + } + + /// + public void InitWPIFeedsAsync(string feedUrls, object userState) { + if ((this.InitWPIFeedsOperationCompleted == null)) { + this.InitWPIFeedsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInitWPIFeedsOperationCompleted); + } + this.InvokeAsync("InitWPIFeeds", new object[] { + feedUrls}, this.InitWPIFeedsOperationCompleted, userState); + } + + private void OnInitWPIFeedsOperationCompleted(object arg) { + if ((this.InitWPIFeedsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.InitWPIFeedsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWPIKeywords", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPIKeyword[] GetWPIKeywords() { + object[] results = this.Invoke("GetWPIKeywords", new object[0]); + return ((WPIKeyword[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIKeywords(System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIKeywords", new object[0], callback, asyncState); + } + + /// + public WPIKeyword[] EndGetWPIKeywords(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPIKeyword[])(results[0])); + } + + /// + public void GetWPIKeywordsAsync() { + this.GetWPIKeywordsAsync(null); + } + + /// + public void GetWPIKeywordsAsync(object userState) { + if ((this.GetWPIKeywordsOperationCompleted == null)) { + this.GetWPIKeywordsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIKeywordsOperationCompleted); + } + this.InvokeAsync("GetWPIKeywords", new object[0], this.GetWPIKeywordsOperationCompleted, userState); + } + + private void OnGetWPIKeywordsOperationCompleted(object arg) { + if ((this.GetWPIKeywordsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIKeywordsCompleted(this, new GetWPIKeywordsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWPIProductsWithDependencies", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public WPIProduct[] GetWPIProductsWithDependencies(string[] products) { + object[] results = this.Invoke("GetWPIProductsWithDependencies", new object[] { + products}); + return ((WPIProduct[])(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIProductsWithDependencies(string[] products, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIProductsWithDependencies", new object[] { + products}, callback, asyncState); + } + + /// + public WPIProduct[] EndGetWPIProductsWithDependencies(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((WPIProduct[])(results[0])); + } + + /// + public void GetWPIProductsWithDependenciesAsync(string[] products) { + this.GetWPIProductsWithDependenciesAsync(products, null); + } + + /// + public void GetWPIProductsWithDependenciesAsync(string[] products, object userState) { + if ((this.GetWPIProductsWithDependenciesOperationCompleted == null)) { + this.GetWPIProductsWithDependenciesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsWithDependenciesOperationCompleted); + } + this.InvokeAsync("GetWPIProductsWithDependencies", new object[] { + products}, this.GetWPIProductsWithDependenciesOperationCompleted, userState); + } + + private void OnGetWPIProductsWithDependenciesOperationCompleted(object arg) { + if ((this.GetWPIProductsWithDependenciesCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIProductsWithDependenciesCompleted(this, new GetWPIProductsWithDependenciesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/InstallWPIProducts", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void InstallWPIProducts(string[] products) { + this.Invoke("InstallWPIProducts", new object[] { + products}); + } + + /// + public System.IAsyncResult BeginInstallWPIProducts(string[] products, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("InstallWPIProducts", new object[] { + products}, callback, asyncState); + } + + /// + public void EndInstallWPIProducts(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void InstallWPIProductsAsync(string[] products) { + this.InstallWPIProductsAsync(products, null); + } + + /// + public void InstallWPIProductsAsync(string[] products, object userState) { + if ((this.InstallWPIProductsOperationCompleted == null)) { + this.InstallWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInstallWPIProductsOperationCompleted); + } + this.InvokeAsync("InstallWPIProducts", new object[] { + products}, this.InstallWPIProductsOperationCompleted, userState); + } + + private void OnInstallWPIProductsOperationCompleted(object arg) { + if ((this.InstallWPIProductsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.InstallWPIProductsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/CancelInstallWPIProducts", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void CancelInstallWPIProducts() { + this.Invoke("CancelInstallWPIProducts", new object[0]); + } + + /// + public System.IAsyncResult BeginCancelInstallWPIProducts(System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("CancelInstallWPIProducts", new object[0], callback, asyncState); + } + + /// + public void EndCancelInstallWPIProducts(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void CancelInstallWPIProductsAsync() { + this.CancelInstallWPIProductsAsync(null); + } + + /// + public void CancelInstallWPIProductsAsync(object userState) { + if ((this.CancelInstallWPIProductsOperationCompleted == null)) { + this.CancelInstallWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCancelInstallWPIProductsOperationCompleted); + } + this.InvokeAsync("CancelInstallWPIProducts", new object[0], this.CancelInstallWPIProductsOperationCompleted, userState); + } + + private void OnCancelInstallWPIProductsOperationCompleted(object arg) { + if ((this.CancelInstallWPIProductsCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.CancelInstallWPIProductsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetWPIStatus", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public string GetWPIStatus() { + object[] results = this.Invoke("GetWPIStatus", new object[0]); + return ((string)(results[0])); + } + + /// + public System.IAsyncResult BeginGetWPIStatus(System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("GetWPIStatus", new object[0], callback, asyncState); + } + + /// + public string EndGetWPIStatus(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((string)(results[0])); + } + + /// + public void GetWPIStatusAsync() { + this.GetWPIStatusAsync(null); + } + + /// + public void GetWPIStatusAsync(object userState) { + if ((this.GetWPIStatusOperationCompleted == null)) { + this.GetWPIStatusOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIStatusOperationCompleted); + } + this.InvokeAsync("GetWPIStatus", new object[0], this.GetWPIStatusOperationCompleted, userState); + } + + private void OnGetWPIStatusOperationCompleted(object arg) { + if ((this.GetWPIStatusCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.GetWPIStatusCompleted(this, new GetWPIStatusCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/WpiGetLogFileDirectory", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public string WpiGetLogFileDirectory() { + object[] results = this.Invoke("WpiGetLogFileDirectory", new object[0]); + return ((string)(results[0])); + } + + /// + public System.IAsyncResult BeginWpiGetLogFileDirectory(System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("WpiGetLogFileDirectory", new object[0], callback, asyncState); + } + + /// + public string EndWpiGetLogFileDirectory(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((string)(results[0])); + } + + /// + public void WpiGetLogFileDirectoryAsync() { + this.WpiGetLogFileDirectoryAsync(null); + } + + /// + public void WpiGetLogFileDirectoryAsync(object userState) { + if ((this.WpiGetLogFileDirectoryOperationCompleted == null)) { + this.WpiGetLogFileDirectoryOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWpiGetLogFileDirectoryOperationCompleted); + } + this.InvokeAsync("WpiGetLogFileDirectory", new object[0], this.WpiGetLogFileDirectoryOperationCompleted, userState); + } + + private void OnWpiGetLogFileDirectoryOperationCompleted(object arg) { + if ((this.WpiGetLogFileDirectoryCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.WpiGetLogFileDirectoryCompleted(this, new WpiGetLogFileDirectoryCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/WpiGetLogsInDirectory", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SettingPair[] WpiGetLogsInDirectory(string Path) { + object[] results = this.Invoke("WpiGetLogsInDirectory", new object[] { + Path}); + return ((SettingPair[])(results[0])); + } + + /// + public System.IAsyncResult BeginWpiGetLogsInDirectory(string Path, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("WpiGetLogsInDirectory", new object[] { + Path}, callback, asyncState); + } + + /// + public SettingPair[] EndWpiGetLogsInDirectory(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((SettingPair[])(results[0])); + } + + /// + public void WpiGetLogsInDirectoryAsync(string Path) { + this.WpiGetLogsInDirectoryAsync(Path, null); + } + + /// + public void WpiGetLogsInDirectoryAsync(string Path, object userState) { + if ((this.WpiGetLogsInDirectoryOperationCompleted == null)) { + this.WpiGetLogsInDirectoryOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWpiGetLogsInDirectoryOperationCompleted); + } + this.InvokeAsync("WpiGetLogsInDirectory", new object[] { + Path}, this.WpiGetLogsInDirectoryOperationCompleted, userState); + } + + private void OnWpiGetLogsInDirectoryOperationCompleted(object arg) { + if ((this.WpiGetLogsInDirectoryCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.WpiGetLogsInDirectoryCompleted(this, new WpiGetLogsInDirectoryCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetLogNames", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public string[] GetLogNames() { object[] results = this.Invoke("GetLogNames", new object[0]); return ((string[])(results[0])); } - + /// - public System.IAsyncResult BeginGetLogNames(System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetLogNames(System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetLogNames", new object[0], callback, asyncState); } - + /// - public string[] EndGetLogNames(System.IAsyncResult asyncResult) - { + public string[] EndGetLogNames(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((string[])(results[0])); } - + /// - public void GetLogNamesAsync() - { + public void GetLogNamesAsync() { this.GetLogNamesAsync(null); } - + /// - public void GetLogNamesAsync(object userState) - { - if ((this.GetLogNamesOperationCompleted == null)) - { + public void GetLogNamesAsync(object userState) { + if ((this.GetLogNamesOperationCompleted == null)) { this.GetLogNamesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetLogNamesOperationCompleted); } this.InvokeAsync("GetLogNames", new object[0], this.GetLogNamesOperationCompleted, userState); } - - private void OnGetLogNamesOperationCompleted(object arg) - { - if ((this.GetLogNamesCompleted != null)) - { + + private void OnGetLogNamesOperationCompleted(object arg) { + if ((this.GetLogNamesCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetLogNamesCompleted(this, new GetLogNamesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetLogEntries", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SystemLogEntry[] GetLogEntries(string logName) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetLogEntries", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SystemLogEntry[] GetLogEntries(string logName) { object[] results = this.Invoke("GetLogEntries", new object[] { logName}); return ((SystemLogEntry[])(results[0])); } - + /// - public System.IAsyncResult BeginGetLogEntries(string logName, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetLogEntries(string logName, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetLogEntries", new object[] { logName}, callback, asyncState); } - + /// - public SystemLogEntry[] EndGetLogEntries(System.IAsyncResult asyncResult) - { + public SystemLogEntry[] EndGetLogEntries(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SystemLogEntry[])(results[0])); } - + /// - public void GetLogEntriesAsync(string logName) - { + public void GetLogEntriesAsync(string logName) { this.GetLogEntriesAsync(logName, null); } - + /// - public void GetLogEntriesAsync(string logName, object userState) - { - if ((this.GetLogEntriesOperationCompleted == null)) - { + public void GetLogEntriesAsync(string logName, object userState) { + if ((this.GetLogEntriesOperationCompleted == null)) { this.GetLogEntriesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetLogEntriesOperationCompleted); } this.InvokeAsync("GetLogEntries", new object[] { logName}, this.GetLogEntriesOperationCompleted, userState); } - - private void OnGetLogEntriesOperationCompleted(object arg) - { - if ((this.GetLogEntriesCompleted != null)) - { + + private void OnGetLogEntriesOperationCompleted(object arg) { + if ((this.GetLogEntriesCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetLogEntriesCompleted(this, new GetLogEntriesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetLogEntriesPaged", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public SystemLogEntriesPaged GetLogEntriesPaged(string logName, int startRow, int maximumRows) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetLogEntriesPaged", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public SystemLogEntriesPaged GetLogEntriesPaged(string logName, int startRow, int maximumRows) { object[] results = this.Invoke("GetLogEntriesPaged", new object[] { logName, startRow, maximumRows}); return ((SystemLogEntriesPaged)(results[0])); } - + /// - public System.IAsyncResult BeginGetLogEntriesPaged(string logName, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetLogEntriesPaged(string logName, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetLogEntriesPaged", new object[] { logName, startRow, maximumRows}, callback, asyncState); } - + /// - public SystemLogEntriesPaged EndGetLogEntriesPaged(System.IAsyncResult asyncResult) - { + public SystemLogEntriesPaged EndGetLogEntriesPaged(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((SystemLogEntriesPaged)(results[0])); } - + /// - public void GetLogEntriesPagedAsync(string logName, int startRow, int maximumRows) - { + public void GetLogEntriesPagedAsync(string logName, int startRow, int maximumRows) { this.GetLogEntriesPagedAsync(logName, startRow, maximumRows, null); } - + /// - public void GetLogEntriesPagedAsync(string logName, int startRow, int maximumRows, object userState) - { - if ((this.GetLogEntriesPagedOperationCompleted == null)) - { + public void GetLogEntriesPagedAsync(string logName, int startRow, int maximumRows, object userState) { + if ((this.GetLogEntriesPagedOperationCompleted == null)) { this.GetLogEntriesPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetLogEntriesPagedOperationCompleted); } this.InvokeAsync("GetLogEntriesPaged", new object[] { @@ -545,398 +962,555 @@ namespace WebsitePanel.Server startRow, maximumRows}, this.GetLogEntriesPagedOperationCompleted, userState); } - - private void OnGetLogEntriesPagedOperationCompleted(object arg) - { - if ((this.GetLogEntriesPagedCompleted != null)) - { + + private void OnGetLogEntriesPagedOperationCompleted(object arg) { + if ((this.GetLogEntriesPagedCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetLogEntriesPagedCompleted(this, new GetLogEntriesPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ClearLog", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public void ClearLog(string logName) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ClearLog", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void ClearLog(string logName) { this.Invoke("ClearLog", new object[] { logName}); } - + /// - public System.IAsyncResult BeginClearLog(string logName, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginClearLog(string logName, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("ClearLog", new object[] { logName}, callback, asyncState); } - + /// - public void EndClearLog(System.IAsyncResult asyncResult) - { + public void EndClearLog(System.IAsyncResult asyncResult) { this.EndInvoke(asyncResult); } - + /// - public void ClearLogAsync(string logName) - { + public void ClearLogAsync(string logName) { this.ClearLogAsync(logName, null); } - + /// - public void ClearLogAsync(string logName, object userState) - { - if ((this.ClearLogOperationCompleted == null)) - { + public void ClearLogAsync(string logName, object userState) { + if ((this.ClearLogOperationCompleted == null)) { this.ClearLogOperationCompleted = new System.Threading.SendOrPostCallback(this.OnClearLogOperationCompleted); } this.InvokeAsync("ClearLog", new object[] { logName}, this.ClearLogOperationCompleted, userState); } - - private void OnClearLogOperationCompleted(object arg) - { - if ((this.ClearLogCompleted != null)) - { + + private void OnClearLogOperationCompleted(object arg) { + if ((this.ClearLogCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.ClearLogCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/RebootSystem", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public void RebootSystem() - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/RebootSystem", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public void RebootSystem() { this.Invoke("RebootSystem", new object[0]); } - + /// - public System.IAsyncResult BeginRebootSystem(System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginRebootSystem(System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("RebootSystem", new object[0], callback, asyncState); } - + /// - public void EndRebootSystem(System.IAsyncResult asyncResult) - { + public void EndRebootSystem(System.IAsyncResult asyncResult) { this.EndInvoke(asyncResult); } - + /// - public void RebootSystemAsync() - { + public void RebootSystemAsync() { this.RebootSystemAsync(null); } - + /// - public void RebootSystemAsync(object userState) - { - if ((this.RebootSystemOperationCompleted == null)) - { + public void RebootSystemAsync(object userState) { + if ((this.RebootSystemOperationCompleted == null)) { this.RebootSystemOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRebootSystemOperationCompleted); } this.InvokeAsync("RebootSystem", new object[0], this.RebootSystemOperationCompleted, userState); } - - private void OnRebootSystemOperationCompleted(object arg) - { - if ((this.RebootSystemCompleted != null)) - { + + private void OnRebootSystemOperationCompleted(object arg) { + if ((this.RebootSystemCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.RebootSystemCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ExecuteSystemCommand", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public string ExecuteSystemCommand(string path, string args) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ExecuteSystemCommand", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] + public string ExecuteSystemCommand(string path, string args) { object[] results = this.Invoke("ExecuteSystemCommand", new object[] { path, args}); return ((string)(results[0])); } - + /// - public System.IAsyncResult BeginExecuteSystemCommand(string path, string args, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginExecuteSystemCommand(string path, string args, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("ExecuteSystemCommand", new object[] { path, args}, callback, asyncState); } - + /// - public string EndExecuteSystemCommand(System.IAsyncResult asyncResult) - { + public string EndExecuteSystemCommand(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((string)(results[0])); } - + /// - public void ExecuteSystemCommandAsync(string path, string args) - { + public void ExecuteSystemCommandAsync(string path, string args) { this.ExecuteSystemCommandAsync(path, args, null); } - + /// - public void ExecuteSystemCommandAsync(string path, string args, object userState) - { - if ((this.ExecuteSystemCommandOperationCompleted == null)) - { + public void ExecuteSystemCommandAsync(string path, string args, object userState) { + if ((this.ExecuteSystemCommandOperationCompleted == null)) { this.ExecuteSystemCommandOperationCompleted = new System.Threading.SendOrPostCallback(this.OnExecuteSystemCommandOperationCompleted); } this.InvokeAsync("ExecuteSystemCommand", new object[] { path, args}, this.ExecuteSystemCommandOperationCompleted, userState); } - - private void OnExecuteSystemCommandOperationCompleted(object arg) - { - if ((this.ExecuteSystemCommandCompleted != null)) - { + + private void OnExecuteSystemCommandOperationCompleted(object arg) { + if ((this.ExecuteSystemCommandCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.ExecuteSystemCommandCompleted(this, new ExecuteSystemCommandCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - public new void CancelAsync(object userState) - { + public new void CancelAsync(object userState) { base.CancelAsync(userState); } } - - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetTerminalServicesSessionsCompletedEventHandler(object sender, GetTerminalServicesSessionsCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetTerminalServicesSessionsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetTerminalServicesSessionsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetTerminalServicesSessionsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) - : - base(exception, cancelled, userState) - { + + internal GetTerminalServicesSessionsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public TerminalSession[] Result - { - get - { + public TerminalSession[] Result { + get { this.RaiseExceptionIfNecessary(); return ((TerminalSession[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void CloseTerminalServicesSessionCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetWindowsProcessesCompletedEventHandler(object sender, GetWindowsProcessesCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetWindowsProcessesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetWindowsProcessesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetWindowsProcessesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) - : - base(exception, cancelled, userState) - { + + internal GetWindowsProcessesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public WindowsProcess[] Result - { - get - { + public WindowsProcess[] Result { + get { this.RaiseExceptionIfNecessary(); return ((WindowsProcess[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void TerminateWindowsProcessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetWindowsServicesCompletedEventHandler(object sender, GetWindowsServicesCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetWindowsServicesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetWindowsServicesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetWindowsServicesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) - : - base(exception, cancelled, userState) - { + + internal GetWindowsServicesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public WindowsService[] Result - { - get - { + public WindowsService[] Result { + get { this.RaiseExceptionIfNecessary(); return ((WindowsService[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void ChangeWindowsServiceStatusCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] - public delegate void GetLogNamesCompletedEventHandler(object sender, GetLogNamesCompletedEventArgs e); - + public delegate void GetWPIProductsCompletedEventHandler(object sender, GetWPIProductsCompletedEventArgs e); + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetLogNamesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetWPIProductsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetLogNamesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) - : - base(exception, cancelled, userState) - { + + internal GetWPIProductsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public string[] Result - { - get - { + public WPIProduct[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPIProduct[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIProductsFilteredCompletedEventHandler(object sender, GetWPIProductsFilteredCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIProductsFilteredCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIProductsFilteredCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPIProduct[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPIProduct[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPITabsCompletedEventHandler(object sender, GetWPITabsCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPITabsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPITabsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPITab[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPITab[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void InitWPIFeedsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIKeywordsCompletedEventHandler(object sender, GetWPIKeywordsCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIKeywordsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIKeywordsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPIKeyword[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPIKeyword[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIProductsWithDependenciesCompletedEventHandler(object sender, GetWPIProductsWithDependenciesCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIProductsWithDependenciesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIProductsWithDependenciesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public WPIProduct[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((WPIProduct[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void InstallWPIProductsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void CancelInstallWPIProductsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetWPIStatusCompletedEventHandler(object sender, GetWPIStatusCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetWPIStatusCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetWPIStatusCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public string Result { + get { + this.RaiseExceptionIfNecessary(); + return ((string)(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void WpiGetLogFileDirectoryCompletedEventHandler(object sender, WpiGetLogFileDirectoryCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class WpiGetLogFileDirectoryCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal WpiGetLogFileDirectoryCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public string Result { + get { + this.RaiseExceptionIfNecessary(); + return ((string)(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void WpiGetLogsInDirectoryCompletedEventHandler(object sender, WpiGetLogsInDirectoryCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class WpiGetLogsInDirectoryCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal WpiGetLogsInDirectoryCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public SettingPair[] Result { + get { + this.RaiseExceptionIfNecessary(); + return ((SettingPair[])(this.results[0])); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + public delegate void GetLogNamesCompletedEventHandler(object sender, GetLogNamesCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class GetLogNamesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal GetLogNamesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public string[] Result { + get { this.RaiseExceptionIfNecessary(); return ((string[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetLogEntriesCompletedEventHandler(object sender, GetLogEntriesCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetLogEntriesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetLogEntriesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetLogEntriesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) - : - base(exception, cancelled, userState) - { + + internal GetLogEntriesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SystemLogEntry[] Result - { - get - { + public SystemLogEntry[] Result { + get { this.RaiseExceptionIfNecessary(); return ((SystemLogEntry[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void GetLogEntriesPagedCompletedEventHandler(object sender, GetLogEntriesPagedCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetLogEntriesPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetLogEntriesPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetLogEntriesPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) - : - base(exception, cancelled, userState) - { + + internal GetLogEntriesPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public SystemLogEntriesPaged Result - { - get - { + public SystemLogEntriesPaged Result { + get { this.RaiseExceptionIfNecessary(); return ((SystemLogEntriesPaged)(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void ClearLogCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void RebootSystemCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] public delegate void ExecuteSystemCommandCompletedEventHandler(object sender, ExecuteSystemCommandCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class ExecuteSystemCommandCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class ExecuteSystemCommandCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal ExecuteSystemCommandCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) - : - base(exception, cancelled, userState) - { + + internal ExecuteSystemCommandCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public string Result - { - get - { + public string Result { + get { this.RaiseExceptionIfNecessary(); return ((string)(this.results[0])); } diff --git a/WebsitePanel/Sources/WebsitePanel.Server.Utils/StringUtils.cs b/WebsitePanel/Sources/WebsitePanel.Server.Utils/StringUtils.cs index 436ee19e..ae0ddc6b 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server.Utils/StringUtils.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server.Utils/StringUtils.cs @@ -28,6 +28,7 @@ using System; using System.Collections.Generic; +using System.Linq; using System.Text; using System.Text.RegularExpressions; @@ -51,5 +52,18 @@ namespace WebsitePanel.Providers.Utils return Regex.Replace(str, "\\W+", "_", RegexOptions.Compiled); } + + public static string CleanupASCIIControlCharacters(string s) + { + byte[] invalidCharacters = { 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0xB, + 0xC, 0xE, 0xF, 0x10, 0x11, 0x12, 0x14, 0x15, 0x16, + 0x17, 0x18, 0x1A, 0x1B, 0x1E, 0x1F, 0x7F }; + + byte[] sanitizedBytes = (from a in Encoding.UTF8.GetBytes(s) + where !invalidCharacters.Contains(a) + select a).ToArray(); + + return Encoding.UTF8.GetString(sanitizedBytes); + } } } diff --git a/WebsitePanel/Sources/WebsitePanel.Server.WPIService/Properties/AssemblyInfo.cs b/WebsitePanel/Sources/WebsitePanel.Server.WPIService/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..9399f7f3 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Server.WPIService/Properties/AssemblyInfo.cs @@ -0,0 +1,65 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("WebsitePanel.Server.WPIService")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("WebsitePanel.Server.WPIService")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("aed34aef-8940-48e0-9183-f2522efd7d28")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/WebsitePanel/Sources/WebsitePanel.Server.WPIService/Server.cs b/WebsitePanel/Sources/WebsitePanel.Server.WPIService/Server.cs new file mode 100644 index 00000000..227dc8c1 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Server.WPIService/Server.cs @@ -0,0 +1,68 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +using System; +using System.Diagnostics; +using System.Runtime.Remoting; +using System.Runtime.Remoting.Channels; +using System.Runtime.Remoting.Channels.Tcp; +using System.Threading; + +namespace WebsitePanel.Server.WPIService +{ + class Server + { + static Mutex mutex = null; + static void Main(string[] args) + { + bool onlyInstance = false; + mutex = new Mutex(false, "Global\\{5DE133EC-49AE-4AE4-99BE-0F0A0BB5719E}", out onlyInstance); + if (!mutex.WaitOne(0, false)) //if (!onlyInstance) + { + Console.WriteLine("The service is already running."); + return; + } + TcpChannel ch = new TcpChannel(WPIServiceContract.PORT); + ChannelServices.RegisterChannel(ch, true); + + WPIService wpiService = new WPIService(); + RemotingServices.Marshal(wpiService, "WPIServiceContract"); + + + Console.WriteLine("The service is running."); + + while (!wpiService.IsFinished) + { + Thread.Sleep(2000); + } + + Console.WriteLine("The service is finished."); + } + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.Server.WPIService/WPIService.cs b/WebsitePanel/Sources/WebsitePanel.Server.WPIService/WPIService.cs new file mode 100644 index 00000000..22e7ca82 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Server.WPIService/WPIService.cs @@ -0,0 +1,247 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using Microsoft.Web.PlatformInstaller; +using WebsitePanel.Server.Code; + +namespace WebsitePanel.Server.WPIService +{ + // Define a service contract. + //[ServiceContract(Namespace = "http://Helicon.Zoo.WPIService")] + //public interface IWPIService + //{ + // // [OperationContract] + // void Initialize(string[] feeds); + + // //[OperationContract] + // void BeginInstallation(string[] productsToInstall); + + // //[OperationContract] + // string GetStatus(); + + // string GetLogs(); + //} + + enum EWPIServiceStatus + { + Initialised, + Installation, + InstallationComplete, + InstallationError + } + + // Service class which implements the service contract. + //[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)] + class WPIService : WPIServiceContract + { + private WpiHelper _wpiHelper; + private string[] _productsToInstall; + + private EWPIServiceStatus _installationStatus; + private string _statusMessage = "preparing..."; + + private Thread _installerThread; + private object _lock = new object(); + + public bool IsFinished { get; private set; } + + #region IWPIService contract + + public override string Ping() + { + return "OK"; + } + + public override void Initialize(string[] feeds) + { + lock (_lock) + { + if (_installationStatus == EWPIServiceStatus.Installation) + { + throw new Exception("Invalid state, already in Installation process"); + } + + _installationStatus = EWPIServiceStatus.Initialised; + + if (_wpiHelper == null) + { + _wpiHelper = new WpiHelper(feeds); + Console.WriteLine("_wpiHelper initialized"); + } + } + } + + public override void BeginInstallation(string[] productsToInstall) + { + lock (_lock) + { + + if (_installationStatus != EWPIServiceStatus.Initialised) + { + throw new Exception("Invalid state, expected EWPIServiceStatus.Initialised. now: " + _installationStatus); + } + + _installationStatus = EWPIServiceStatus.Installation; + _statusMessage = "Preparing for install"; + + _productsToInstall = new string[productsToInstall.Length]; + productsToInstall.CopyTo(_productsToInstall,0); + + _installerThread = new Thread(new ThreadStart(InternalBeginInstallation)); + _installerThread.Start(); + } + } + + + public override string GetStatus() + { + + lock(_lock) + { + + string result = this._statusMessage; + + //Allow exit from app, if finished + IsInstallationProceed(); + + return result; + } + } + + public override string GetLogFileDirectory() + { + + lock (_lock) + { + return null != _wpiHelper ? _wpiHelper.GetLogFileDirectory() : null; + } + } + + #endregion + + #region private implementaion + private bool IsInstallationProceed() + { + if (_installationStatus == EWPIServiceStatus.InstallationComplete) + { + IsFinished = true; + return false; + } + else if (_installationStatus == EWPIServiceStatus.InstallationError) + { + IsFinished = true; + return false; + } + + return true; + } + + + private void InternalBeginInstallation() + { + _wpiHelper.InstallProducts( + _productsToInstall, + WpiHelper.DeafultLanguage, + InstallStatusUpdatedHandler, + InstallCompleteHandler + ); + + lock (_lock) + { + _installationStatus = EWPIServiceStatus.InstallationComplete; + } + } + + private void InstallCompleteHandler(object sender, EventArgs eventArgs) + { + lock(_lock) + { + _installationStatus = EWPIServiceStatus.InstallationComplete; + } + } + + + private void InstallStatusUpdatedHandler(object sender, InstallStatusEventArgs e) + { + StringBuilder sb = new StringBuilder(); + sb.AppendFormat("{0}: ", e.InstallerContext.ProductName); + + switch (e.InstallerContext.InstallationState) + { + case InstallationState.Waiting: + sb.Append("please wait...").AppendLine(); + break; + case InstallationState.Downloading: + sb.Append("downloading").AppendLine(); + if (e.ProgressValue > 0) + { + sb.AppendFormat("{0} of {1} Kb downloaded", e.ProgressValue, + e.InstallerContext.Installer.InstallerFile.FileSize); + sb.AppendLine(); + } + break; + case InstallationState.Downloaded: + sb.Append("downloaded").AppendLine(); + break; + case InstallationState.DownloadFailed: + sb.AppendFormat("download failed").AppendLine(); + sb.AppendLine(e.InstallerContext.InstallStateDetails); + break; + case InstallationState.DependencyFailed: + sb.AppendFormat("dependency failed").AppendLine(); + sb.AppendLine(e.InstallerContext.InstallStateDetails); + sb.AppendFormat("{0}: {1}", e.InstallerContext.ReturnCode.Status, e.InstallerContext.ReturnCode.DetailedInformation).AppendLine(); + break; + case InstallationState.Installing: + sb.Append("installing").AppendLine(); + break; + case InstallationState.InstallCompleted: + sb.Append("install completed").AppendLine(); + break; + case InstallationState.Canceled: + sb.AppendFormat("canceled").AppendLine(); + sb.AppendLine(e.InstallerContext.InstallStateDetails); + sb.AppendFormat("{0}: {1}", e.InstallerContext.ReturnCode.Status, e.InstallerContext.ReturnCode.DetailedInformation).AppendLine(); + break; + default: + throw new ArgumentOutOfRangeException(); + } + + lock (_lock) + { + _statusMessage = sb.ToString(); + } + } + #endregion + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.Server.WPIService/WebsitePanel.Server.WPIService.csproj b/WebsitePanel/Sources/WebsitePanel.Server.WPIService/WebsitePanel.Server.WPIService.csproj new file mode 100644 index 00000000..dd23de4b --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Server.WPIService/WebsitePanel.Server.WPIService.csproj @@ -0,0 +1,76 @@ + + + + Debug + AnyCPU + 8.0.30703 + 2.0 + {DD9E57D5-797F-4420-AF1A-23CEA2F310E0} + Exe + Properties + WebsitePanel.Server.WPIService + WebsitePanel.Server.WPIService + v3.5 + + + 512 + + + true + full + false + ..\WebsitePanel.Server\bin\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + ..\WebsitePanel.Server\bin\ + TRACE + prompt + 4 + + + + False + ..\..\Lib\References\Microsoft\Microsoft.Web.Deployment.dll + + + False + ..\..\Lib\Microsoft.Web.PlatformInstaller.dll + + + + + + + + + + WPIHelper.cs + + + + + + + + {736FA0F0-ECA3-416E-B299-85CC425FFF44} + WebsitePanel.Server.WPIServiceContract + + + + + + + + + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/Properties/AssemblyInfo.cs b/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..61847b8a --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/Properties/AssemblyInfo.cs @@ -0,0 +1,65 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("WpiServiceContract")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("WpiServiceContract")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("9af06617-244e-4494-a960-08c2e1654f0b")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/WPIServiceContract.cs b/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/WPIServiceContract.cs new file mode 100644 index 00000000..35ec5f7e --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/WPIServiceContract.cs @@ -0,0 +1,46 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +using System; +using System.Collections.Generic; + + +namespace WebsitePanel.Server.WPIService +{ + public class WPIServiceContract : MarshalByRefObject + { + public const int PORT = 7591; //random + + virtual public string Ping() { return "NotImplemented"; } + virtual public void Initialize(string[] feeds){} + virtual public void BeginInstallation(string[] productsToInstall) { } + virtual public string GetStatus() { return "NotImplemented"; } + virtual public string GetLogFileDirectory() { return "NotImplemented"; } + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/WebsitePanel.Server.WPIServiceContract.csproj b/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/WebsitePanel.Server.WPIServiceContract.csproj new file mode 100644 index 00000000..1bc29ffc --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Server.WPIServiceContract/WebsitePanel.Server.WPIServiceContract.csproj @@ -0,0 +1,54 @@ + + + + Debug + AnyCPU + 8.0.30703 + 2.0 + {736FA0F0-ECA3-416E-B299-85CC425FFF44} + Library + Properties + WpiServiceContract + WpiServiceContract + v3.5 + 512 + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Server.sln b/WebsitePanel/Sources/WebsitePanel.Server.sln index c4b625b2..d6a24e21 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server.sln +++ b/WebsitePanel/Sources/WebsitePanel.Server.sln @@ -99,6 +99,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Providers.Virt EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Providers.Mail.SmarterMail9", "WebsitePanel.Providers.Mail.SmarterMail9\WebsitePanel.Providers.Mail.SmarterMail9.csproj", "{FB97E984-2463-44EB-B8BE-14AA41D0365E}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Server.WPIService", "WebsitePanel.Server.WPIService\WebsitePanel.Server.WPIService.csproj", "{DD9E57D5-797F-4420-AF1A-23CEA2F310E0}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Server.WPIServiceContract", "WebsitePanel.Server.WPIServiceContract\WebsitePanel.Server.WPIServiceContract.csproj", "{736FA0F0-ECA3-416E-B299-85CC425FFF44}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -277,6 +281,14 @@ Global {FB97E984-2463-44EB-B8BE-14AA41D0365E}.Debug|Any CPU.Build.0 = Debug|Any CPU {FB97E984-2463-44EB-B8BE-14AA41D0365E}.Release|Any CPU.ActiveCfg = Release|Any CPU {FB97E984-2463-44EB-B8BE-14AA41D0365E}.Release|Any CPU.Build.0 = Release|Any CPU + {DD9E57D5-797F-4420-AF1A-23CEA2F310E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DD9E57D5-797F-4420-AF1A-23CEA2F310E0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DD9E57D5-797F-4420-AF1A-23CEA2F310E0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DD9E57D5-797F-4420-AF1A-23CEA2F310E0}.Release|Any CPU.Build.0 = Release|Any CPU + {736FA0F0-ECA3-416E-B299-85CC425FFF44}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {736FA0F0-ECA3-416E-B299-85CC425FFF44}.Debug|Any CPU.Build.0 = Debug|Any CPU + {736FA0F0-ECA3-416E-B299-85CC425FFF44}.Release|Any CPU.ActiveCfg = Release|Any CPU + {736FA0F0-ECA3-416E-B299-85CC425FFF44}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/WebsitePanel/Sources/WebsitePanel.Server/Code/UsernameAssertion.cs b/WebsitePanel/Sources/WebsitePanel.Server/Code/UsernameAssertion.cs index 505f79fe..cfd60f5e 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/Code/UsernameAssertion.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server/Code/UsernameAssertion.cs @@ -38,6 +38,7 @@ using Microsoft.Web.Services3; using Microsoft.Web.Services3.Design; using Microsoft.Web.Services3.Security; using Microsoft.Web.Services3.Security.Tokens; +using WebSecurity=Microsoft.Web.Services3.Security.Security; namespace WebsitePanel.Server { @@ -105,7 +106,7 @@ namespace WebsitePanel.Server this.filterContext = filterContext; } - public override void ValidateMessageSecurity(SoapEnvelope envelope, Security security) + public override void ValidateMessageSecurity(SoapEnvelope envelope, WebSecurity security) { if (!ServerConfiguration.Security.SecurityEnabled) return; @@ -145,7 +146,7 @@ namespace WebsitePanel.Server throw new SecurityFault("Message did not meet security requirements."); } - private bool CheckSignature(SoapEnvelope envelope, Security security, MessageSignature signature) + private bool CheckSignature(SoapEnvelope envelope, WebSecurity security, MessageSignature signature) { // // Now verify which parts of the message were actually signed. diff --git a/WebsitePanel/Sources/WebsitePanel.Server/Code/WPIHelper.cs b/WebsitePanel/Sources/WebsitePanel.Server/Code/WPIHelper.cs new file mode 100644 index 00000000..e37445b8 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Server/Code/WPIHelper.cs @@ -0,0 +1,807 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading; +using Microsoft.Web.Deployment; +using Microsoft.Web.PlatformInstaller; +using Installer = Microsoft.Web.PlatformInstaller.Installer; + +namespace WebsitePanel.Server.Code +{ + public class WpiUpdatedDeploymentParameter + { + public string Name; + public string Value; + public DeploymentWellKnownTag WellKnownTags; + } + + public class WpiHelper + { + #region public consts + + public const string DeafultLanguage = "en"; + + #endregion + + #region private fields + + private readonly List _feeds; + private string _webPIinstallersFolder; + private const string MainWpiFeed = "https://www.microsoft.com/web/webpi/3.0/webproductlist.xml"; + private const string IisChoiceProduct = "StaticContent"; + private const string WebMatrixChoiceProduct = "WebMatrix"; + private ProductManager _productManager; + private bool _installCompleted; + private InstallManager _installManager; + private string _LogFileDirectory = string.Empty; + string _resourceLanguage = DeafultLanguage; + private const DeploymentWellKnownTag databaseEngineTags = + DeploymentWellKnownTag.Sql | + DeploymentWellKnownTag.MySql | + DeploymentWellKnownTag.SqLite | + DeploymentWellKnownTag.VistaDB | + DeploymentWellKnownTag.FlatFile; + + #endregion private fields + + public WpiHelper(IEnumerable feeds) + { + _feeds = new List(); + _feeds.AddRange(feeds); + + Initialize(); + } + + private void Initialize() + { + // insert Main WebPI xml file + if (!_feeds.Contains(MainWpiFeed, StringComparer.OrdinalIgnoreCase)) + { + _feeds.Insert(0, MainWpiFeed); + } + + // create cache folder if not exists + //_webPIinstallersFolder = Environment.ExpandEnvironmentVariables(@"%LocalAppData%\Microsoft\Web Platform Installer\installers"); + _webPIinstallersFolder = Path.Combine( + Environment.ExpandEnvironmentVariables("%SystemRoot%"), + "Temp\\zoo.wpi\\AppData\\Local\\Microsoft\\Web Platform Installer\\installers" ); + + if (!Directory.Exists(_webPIinstallersFolder)) + { + Directory.CreateDirectory(_webPIinstallersFolder); + } + + // load feeds + _productManager = new ProductManager(); + + + foreach (string feed in _feeds) + { + Log(string.Format("Loading {0}", feed)); + if (feed.StartsWith("https://www.microsoft.com", StringComparison.OrdinalIgnoreCase)) + { + _productManager.Load(new Uri(feed), true, true, true, _webPIinstallersFolder); + } + else + { + _productManager.LoadExternalFile(new Uri(feed)); + } + } + + Log(string.Format("{0} products loaded", _productManager.Products.Count)); + + LogDebugInfo(); + } + + public void SetResourceLanguage(string resourceLanguage) + { + _resourceLanguage = resourceLanguage; + _productManager.SetResourceLanguage(resourceLanguage); + } + + #region Public interface + + public List GetProducts() + { + return GetProducts(null,null); + } + + public List GetLanguages() + { + List languages = new List(); + + foreach (Product product in GetProducts()) + { + if (null!=product.Installers) + { + foreach (Installer installer in product.Installers) + { + Language lang = installer.Language; + if (null!=lang && !languages.Contains(lang)) + { + languages.Add(lang); + } + } + } + } + + return languages; + } + + public void CancelInstallProducts() + { + if (_installManager!= null) + { + _installManager.Cancel(); + } + } + + private List GetInstallers(List productsToInstall, Language lang) + { + List installersToUse = new List(); + foreach (Product product in productsToInstall) + { + Installer installer = product.GetInstaller(lang); + if (null != installer) + { + installersToUse.Add(installer); + } + } + + return installersToUse; + } + + + public List GetProductsWithDependencies(IEnumerable productIdsToInstall ) + { + List updatedProductIdsToInstall = new List(); + // add iis chioce product to force iis (not-iisexpress/webmatrix) branch + updatedProductIdsToInstall.Add(IisChoiceProduct); + updatedProductIdsToInstall.AddRange(productIdsToInstall); + + List productsToInstall = new List(); + + foreach (string productId in updatedProductIdsToInstall) + { + Log(string.Format("Product {0} to be installed", productId)); + + Product product = _productManager.GetProduct(productId); + if (null == product) + { + Log(string.Format("Product {0} not found", productId)); + continue; + } + if (product.IsInstalled(true)) + { + Log(string.Format("Product {0} is installed", product.Title)); + } + else + { + Log(string.Format("Adding product {0} with dependencies", product.Title)); + // search and add dependencies but skip webmatrix/iisexpress branches + AddProductWithDependencies(product, productsToInstall, WebMatrixChoiceProduct); + } + } + + return productsToInstall; + } + + public string GetLogFileDirectory() + { + return _LogFileDirectory; + } + + + private Language GetLanguage(string languageId) + { + if (!string.IsNullOrEmpty(languageId)) + { + return _productManager.GetLanguage(languageId); + } + + return _productManager.GetLanguage(DeafultLanguage); + } + + + // GetTabs + public ReadOnlyCollection GetTabs() + { + return _productManager.Tabs; + } + + public Tab GetTab(string tabId) + { + return _productManager.GetTab(tabId); + } + + // GetKeywords + public ReadOnlyCollection GetKeywords() + { + return _productManager.Keywords; + } + + public List GetApplications(string keywordId) + { + + Keyword keyword = null; + if (!string.IsNullOrEmpty(keywordId)) + { + keyword = _productManager.GetKeyword(keywordId); + } + + + + List products = new List(); + + Language lang = GetLanguage(_resourceLanguage); + Language langDefault = GetLanguage(DeafultLanguage); + + foreach (Product product in _productManager.Products) + { + if (!product.IsApplication) + { + // skip + continue; + } + + //Check language + if ( + lang.AvailableProducts.Contains(product) || + langDefault.AvailableProducts.Contains(product) + ) + { + if (null == keyword) + { + products.Add(product); + } + else if (product.Keywords.Contains(keyword)) + { + products.Add(product); + } + + } + + } + + //Sort by Title + products.Sort(delegate(Product a, Product b) + { + return a.Title.CompareTo(b.Title); + }); + + + return products; + } + + public Product GetProduct(string productId) + { + return _productManager.GetProduct(productId); + } + + public IList GetAppDecalredParameters(string productId) + { + Product app = _productManager.GetProduct(productId); + Installer appInstaller = app.GetInstaller(GetLanguage(null)); + return appInstaller.MSDeployPackage.DeclaredParameters; + } + + public void InstallProducts( + IEnumerable productIdsToInstall, + string languageId, + EventHandler installStatusUpdatedHandler, + EventHandler installCompleteHandler) + { + + // Get products & dependencies list to install + List productsToInstall = GetProductsWithDependencies(productIdsToInstall); + + // Get installers + Language lang = GetLanguage(languageId); + List installersToUse = GetInstallers(productsToInstall, lang ); + + + // Prepare install manager & set event handlers + _installManager = new InstallManager(); + _installManager.Load(installersToUse); + + + if (null != installStatusUpdatedHandler) + { + _installManager.InstallerStatusUpdated += installStatusUpdatedHandler; + } + _installManager.InstallerStatusUpdated += InstallManager_InstallerStatusUpdated; + + if (null != installCompleteHandler) + { + _installManager.InstallCompleted += installCompleteHandler; + } + _installManager.InstallCompleted += InstallManager_InstallCompleted; + + // Download installer files + foreach (InstallerContext installerContext in _installManager.InstallerContexts) + { + if (null != installerContext.Installer.InstallerFile) + { + string failureReason; + if (!_installManager.DownloadInstallerFile(installerContext, out failureReason)) + { + Log(string.Format("DownloadInstallerFile '{0}' failed: {1}", + installerContext.Installer.InstallerFile.InstallerUrl, failureReason)); + } + } + } + + if (installersToUse.Count > 0) + { + // Start installation + _installCompleted = false; + Log("_installManager.StartInstallation()"); + _installManager.StartInstallation(); + + Log("_installManager.StartInstallation() done"); + while (!_installCompleted) + { + Thread.Sleep(100); + } + + //save logs + SaveLogDirectory(); + + + _installCompleted = false; + } + else + { + Log("Nothing to install"); + } + + } + + public bool InstallApplication( + string appId, + List updatedValues, + string languageId, + EventHandler installStatusUpdatedHandler, + EventHandler installCompleteHandler, + out string log, + out string failedMessage + ) + { + + Product app = GetProduct(appId); + Installer appInstaller = app.GetInstaller(GetLanguage(languageId)); + WpiAppInstallLogger logger = new WpiAppInstallLogger(); + + if (null != installStatusUpdatedHandler) + { + _installManager.InstallerStatusUpdated += installStatusUpdatedHandler; + } + _installManager.InstallerStatusUpdated += logger.HanlderInstallerStatusUpdated; + + if (null != installCompleteHandler) + { + _installManager.InstallCompleted += installCompleteHandler; + } + _installManager.InstallCompleted += logger.HandlerInstallCompleted; + + // set updated parameters + foreach (WpiUpdatedDeploymentParameter parameter in updatedValues) + { + if (!string.IsNullOrEmpty(parameter.Value)) + { + appInstaller.MSDeployPackage.SetParameters[parameter.Name] = parameter.Value; + } + } + + DeploymentWellKnownTag dbTag = (DeploymentWellKnownTag)GetDbTag(updatedValues); + + // remove parameters with alien db tags + foreach (DeclaredParameter parameter in appInstaller.MSDeployPackage.DeclaredParameters) + { + if (IsAlienDbTaggedParameter(dbTag, parameter)) + { + appInstaller.MSDeployPackage.RemoveParameters.Add(parameter.Name); + } + } + + // skip alien directives + RemoveUnusedProviders(appInstaller.MSDeployPackage, dbTag); + + _installCompleted = false; + Log("_installManager.StartApplicationInstallation()"); + _installManager.StartApplicationInstallation(); + while (!_installCompleted) + { + Thread.Sleep(1000); + } + Log("_installManager.StartApplicationInstallation() _installCompleted"); + + //save logs + SaveLogDirectory(); + + _installCompleted = false; + + log = logger.GetLog(); + failedMessage = logger.FailedMessage; + + return !logger.IsFailed; + } + + public bool IsKeywordApplication(Keyword keyword) + { + //if all products are Application + foreach (Product product in keyword.Products) + { + if (!product.IsApplication) + { + return false; + } + } + + return true; + + } + + #endregion Public interface + + + #region private members + + private void LogDebugInfo() + { + StringBuilder sb = new StringBuilder(); + + sb.Append("Products: "); + + sb.Append("Tabs: ").AppendLine(); + foreach (Tab tab in _productManager.Tabs) + { + sb.AppendFormat("\t{0}, FromCustomFeed = {1}", tab.Name, tab.FromCustomFeed).AppendLine(); + foreach (string f in tab.FeedList) + { + sb.AppendFormat("\t\t{0}", f).AppendLine(); + } + sb.AppendLine(); + } + sb.AppendLine(); + + sb.Append("Keywords: ").AppendLine().Append("\t"); + foreach (Keyword keyword in _productManager.Keywords) + { + sb.Append(keyword.Id).Append(","); + } + sb.AppendLine(); + + sb.Append("Languages: ").AppendLine().Append("\t"); + foreach (Language language in _productManager.Languages) + { + sb.Append(language.Name).Append(","); + } + sb.AppendLine(); + + Log(sb.ToString()); + } + + private static void Log(string message) + { +//#if DEBUG + Debug.WriteLine(string.Format("[{0}] WpiHelper: {1}", Process.GetCurrentProcess().Id, message)); + Console.WriteLine(message); +//#endif + } + + public List GetProducts(string FeedLocation, string keywordId) + { + Keyword keyword = null; + if (!string.IsNullOrEmpty(keywordId)) + { + keyword = _productManager.GetKeyword(keywordId); + } + + List products = new List(); + + foreach (Product product in _productManager.Products) + { + if (!string.IsNullOrEmpty(FeedLocation) && string.Compare(product.FeedLocation, FeedLocation, StringComparison.OrdinalIgnoreCase) != 0) + { + // if FeedLocation defined, then select products only from this feed location + continue; + } + + if (null == product.Installers || product.Installers.Count == 0) + { + // skip this product + // usually product without intsallers user as product detection + continue; + } + + if (null == keyword) + { + products.Add(product); + } + else if (product.Keywords.Contains(keyword)) + { + products.Add(product); + } + } + + //Sort by Title + products.Sort(delegate(Product a, Product b) + { + return a.Title.CompareTo(b.Title); + }); + + return products; + } + + public List GetProductsFiltered(string filter) + { + + List products = new List(); + + foreach (Product product in _productManager.Products) + { + if (null == product.Installers || product.Installers.Count == 0) + { + // skip this product + // usually product without intsallers user as product detection + continue; + } + + if (string.IsNullOrEmpty(filter)) + { + products.Add(product); + } + else if (product.Title.ToLower().Contains(filter.ToLower())) + { + products.Add(product); + } + } + + //Sort by Title + products.Sort(delegate(Product a, Product b) + { + return a.Title.CompareTo(b.Title); + }); + + + return products; + } + + + private void InstallManager_InstallCompleted(object sender, EventArgs e) + { + Log("Installation completed"); + if (null != _installManager) + { + /* + try + { + _installManager.Dispose(); + } catch(Exception ex) + { + Log("InstallManager_InstallCompleted Exception: "+ex.ToString()); + } + _installManager = null; + */ + } + _installCompleted = true; + } + + private void InstallManager_InstallerStatusUpdated(object sender, InstallStatusEventArgs e) + { + Log(string.Format("{0}: {1}. {2} Progress: {3}", + e.InstallerContext.ProductName, + e.InstallerContext.InstallationState, + e.InstallerContext.ReturnCode.DetailedInformation, + e.ProgressValue)); + } + + private static void AddProductWithDependencies(Product product, List productsToInstall, string skipProduct) + { + if (!productsToInstall.Contains(product)) + { + productsToInstall.Add(product); + } + + ICollection missingDependencies = product.GetMissingDependencies(productsToInstall); + if (missingDependencies != null) + { + foreach (Product dependency in missingDependencies) + { + if (string.Equals(dependency.ProductId, skipProduct, StringComparison.OrdinalIgnoreCase)) + { + Log(string.Format("Product {0} is iis express dependency, skip it", dependency.Title)); + continue; + } + + AddProductWithDependencies(dependency, productsToInstall, skipProduct); + } + } + } + + private void SaveLogDirectory() + { + Log("SaveLogDirectory"); + foreach (InstallerContext ctx in _installManager.InstallerContexts) + { + Log(ctx.LogFileDirectory); + _LogFileDirectory = ctx.LogFileDirectory; + break; + + } + } + + private DeploymentWellKnownTag GetDbTag(List parameters) + { + foreach (WpiUpdatedDeploymentParameter parameter in parameters) + { + if ((parameter.WellKnownTags & databaseEngineTags) != 0) + { + return (DeploymentWellKnownTag)Enum.Parse( + typeof(DeploymentWellKnownTag), + (parameter.WellKnownTags & databaseEngineTags).ToString().Split(',')[0]); + } + } + + return DeploymentWellKnownTag.None; + } + + private static bool IsAlienDbTaggedParameter(DeploymentWellKnownTag dbTag, DeclaredParameter parameter) + { + return (parameter.Tags & databaseEngineTags) != DeploymentWellKnownTag.None + && + (parameter.Tags & dbTag) == DeploymentWellKnownTag.None; + } + + private static void RemoveUnusedProviders(MSDeployPackage msDeployPackage, DeploymentWellKnownTag dbTag) + { + List providersToRemove = new List(); + + switch (dbTag) + { + case DeploymentWellKnownTag.MySql: + providersToRemove.Add("dbFullSql"); + providersToRemove.Add("DBSqlite"); + break; + case DeploymentWellKnownTag.Sql: + providersToRemove.Add("dbMySql"); + providersToRemove.Add("DBSqlite"); + break; + case DeploymentWellKnownTag.FlatFile: + providersToRemove.Add("dbFullSql"); + providersToRemove.Add("DBSqlite"); + providersToRemove.Add("dbMySql"); + break; + case DeploymentWellKnownTag.SqLite: + providersToRemove.Add("dbFullSql"); + providersToRemove.Add("dbMySql"); + break; + case DeploymentWellKnownTag.VistaDB: + providersToRemove.Add("dbFullSql"); + providersToRemove.Add("DBSqlite"); + providersToRemove.Add("dbMySql"); + break; + case DeploymentWellKnownTag.SqlCE: + providersToRemove.Add("dbFullSql"); + providersToRemove.Add("DBSqlite"); + providersToRemove.Add("dbMySql"); + break; + default: + break; + } + + foreach (string provider in providersToRemove) + { + msDeployPackage.SkipDirectives.Add(string.Format("objectName={0}", provider)); + } + } + + #endregion private members + } + + class WpiAppInstallLogger + { + private StringBuilder sb; + private InstallReturnCode _installReturnCode; + private string _failedMessage = string.Empty; + + public WpiAppInstallLogger() + { + sb = new StringBuilder(); + } + + public InstallReturnCode ReturnCode + { + get { return _installReturnCode; } + } + + public string FailedMessage + { + get { return _failedMessage; } + } + + public bool IsFailed + { + get + { + if (null != _installReturnCode) + { + return _installReturnCode.Status == InstallReturnCodeStatus.Failure || + _installReturnCode.Status == InstallReturnCodeStatus.FailureRebootRequired; + } + return false; + } + } + + public void HanlderInstallerStatusUpdated(object sender, InstallStatusEventArgs e) + { + sb.AppendFormat("{0}: {1}. {2} Progress: {3}", + e.InstallerContext.ProductName, + e.InstallerContext.InstallationState, + e.InstallerContext.ReturnCode.DetailedInformation, + e.ProgressValue).AppendLine(); + } + + public void HandlerInstallCompleted(object sender, EventArgs e) + { + InstallManager installManager = sender as InstallManager; + if (null != installManager) + { + InstallerContext installerContext; + if (null != installManager.InstallerContexts && installManager.InstallerContexts.Count>0) + { + installerContext = installManager.InstallerContexts[0]; + _installReturnCode = installerContext.ReturnCode; + } + } + + if (null != _installReturnCode) + { + _failedMessage = string.Format("{0}: {1}", + _installReturnCode.Status, + _installReturnCode.DetailedInformation); + sb.AppendFormat("Return Code: {0}", _failedMessage).AppendLine(); + } + sb.AppendLine("Installation completed"); + } + + public string GetLog() + { + return sb.ToString(); + } + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.Server/Web.config b/WebsitePanel/Sources/WebsitePanel.Server/Web.config index 61882914..dafa8009 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/Web.config +++ b/WebsitePanel/Sources/WebsitePanel.Server/Web.config @@ -119,7 +119,7 @@ algorithmSuite="Default" /> - - + + diff --git a/WebsitePanel/Sources/WebsitePanel.Server/WebServer.asmx.cs b/WebsitePanel/Sources/WebsitePanel.Server/WebServer.asmx.cs index 0db78da3..16706c94 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/WebServer.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server/WebServer.asmx.cs @@ -1062,12 +1062,62 @@ namespace WebsitePanel.Server #region Web Application Gallery [WebMethod, SoapHeader("settings")] - public GalleryCategoriesResult GetGalleryCategories() + public void InitFeeds(int UserId, string[] feeds) + { + try + { + Log.WriteStart("'{0}' InitFeeds", ProviderSettings.ProviderName); + WebProvider.InitFeeds(UserId, feeds); + Log.WriteEnd("'{0}' InitFeeds", ProviderSettings.ProviderName); + } + catch (Exception ex) + { + Log.WriteError(String.Format("'{0}' InitFeeds", ProviderSettings.ProviderName), ex); + throw; + } + } + + [WebMethod, SoapHeader("settings")] + public void SetResourceLanguage(int UserId, string resourceLanguage) + { + try + { + Log.WriteStart("'{0}' SetResourceLanguage", ProviderSettings.ProviderName); + WebProvider.SetResourceLanguage(UserId,resourceLanguage); + Log.WriteEnd("'{0}' SetResourceLanguage", ProviderSettings.ProviderName); + } + catch (Exception ex) + { + Log.WriteError(String.Format("'{0}' SetResourceLanguage", ProviderSettings.ProviderName), ex); + throw; + } + } + + + [WebMethod, SoapHeader("settings")] + public GalleryLanguagesResult GetGalleryLanguages(int UserId) + { + try + { + Log.WriteStart("'{0}' GalleryLanguagesResult", ProviderSettings.ProviderName); + GalleryLanguagesResult result = WebProvider.GetGalleryLanguages(UserId); + Log.WriteEnd("'{0}' GalleryLanguagesResult", ProviderSettings.ProviderName); + return result; + } + catch (Exception ex) + { + Log.WriteError(String.Format("'{0}' GalleryLanguagesResult", ProviderSettings.ProviderName), ex); + throw; + } + } + + [WebMethod, SoapHeader("settings")] + public GalleryCategoriesResult GetGalleryCategories(int UserId) { try { Log.WriteStart("'{0}' GalleryCategoriesResult", ProviderSettings.ProviderName); - GalleryCategoriesResult result = WebProvider.GetGalleryCategories(); + GalleryCategoriesResult result = WebProvider.GetGalleryCategories(UserId); Log.WriteEnd("'{0}' GalleryCategoriesResult", ProviderSettings.ProviderName); return result; } @@ -1079,12 +1129,12 @@ namespace WebsitePanel.Server } [WebMethod, SoapHeader("settings")] - public GalleryApplicationsResult GetGalleryApplications(string categoryId) + public GalleryApplicationsResult GetGalleryApplications(int UserId, string categoryId) { try { Log.WriteStart("'{0}' GetGalleryApplications", ProviderSettings.ProviderName); - GalleryApplicationsResult result = WebProvider.GetGalleryApplications(categoryId); + GalleryApplicationsResult result = WebProvider.GetGalleryApplications(UserId,categoryId); Log.WriteEnd("'{0}' GetGalleryApplications", ProviderSettings.ProviderName); return result; } @@ -1094,7 +1144,26 @@ namespace WebsitePanel.Server throw; } } - [WebMethod, SoapHeader("settings")] + + [WebMethod, SoapHeader("settings")] + public GalleryApplicationsResult GetGalleryApplicationsFiltered(int UserId, string pattern) + { + try + { + Log.WriteStart("'{0}' GetGalleryApplicationsFiltered", ProviderSettings.ProviderName); + GalleryApplicationsResult result = WebProvider.GetGalleryApplicationsFiltered(UserId,pattern); + Log.WriteEnd("'{0}' GetGalleryApplicationsFiltered", ProviderSettings.ProviderName); + return result; + } + catch (Exception ex) + { + Log.WriteError(String.Format("'{0}' GetGalleryApplicationsFiltered", ProviderSettings.ProviderName), ex); + throw; + } + } + + + [WebMethod, SoapHeader("settings")] public bool IsMsDeployInstalled() { try @@ -1111,13 +1180,13 @@ namespace WebsitePanel.Server } } - [WebMethod, SoapHeader("settings")] - public GalleryApplicationResult GetGalleryApplication(string id) + [WebMethod, SoapHeader("settings")] + public GalleryApplicationResult GetGalleryApplication(int UserId, string id) { try { Log.WriteStart("'{0}' GetGalleryApplication", ProviderSettings.ProviderName); - GalleryApplicationResult result = WebProvider.GetGalleryApplication(id); + GalleryApplicationResult result = WebProvider.GetGalleryApplication(UserId,id); Log.WriteEnd("'{0}' GetGalleryApplication", ProviderSettings.ProviderName); return result; } @@ -1128,13 +1197,13 @@ namespace WebsitePanel.Server } } - [WebMethod, SoapHeader("settings")] - public GalleryWebAppStatus GetGalleryApplicationStatus(string id) + [WebMethod, SoapHeader("settings")] + public GalleryWebAppStatus GetGalleryApplicationStatus(int UserId, string id) { try { Log.WriteStart("'{0}' GetGalleryApplicationStatus", ProviderSettings.ProviderName); - GalleryWebAppStatus result = WebProvider.GetGalleryApplicationStatus(id); + GalleryWebAppStatus result = WebProvider.GetGalleryApplicationStatus(UserId,id); Log.WriteEnd("'{0}' GetGalleryApplicationStatus", ProviderSettings.ProviderName); return result; } @@ -1144,14 +1213,14 @@ namespace WebsitePanel.Server throw; } } - - [WebMethod, SoapHeader("settings")] - public GalleryWebAppStatus DownloadGalleryApplication(string id) + + [WebMethod, SoapHeader("settings")] + public GalleryWebAppStatus DownloadGalleryApplication(int UserId, string id) { try { Log.WriteStart("'{0}' DownloadGalleryApplication", ProviderSettings.ProviderName); - GalleryWebAppStatus result = WebProvider.DownloadGalleryApplication(id); + GalleryWebAppStatus result = WebProvider.DownloadGalleryApplication(UserId,id); Log.WriteEnd("'{0}' DownloadGalleryApplication", ProviderSettings.ProviderName); return result; } @@ -1162,13 +1231,13 @@ namespace WebsitePanel.Server } } - [WebMethod, SoapHeader("settings")] - public DeploymentParametersResult GetGalleryApplicationParameters(string id) + [WebMethod, SoapHeader("settings")] + public DeploymentParametersResult GetGalleryApplicationParameters(int UserId, string id) { try { Log.WriteStart("'{0}' GetGalleryApplicationParameters", ProviderSettings.ProviderName); - DeploymentParametersResult result = WebProvider.GetGalleryApplicationParameters(id); + DeploymentParametersResult result = WebProvider.GetGalleryApplicationParameters(UserId,id); Log.WriteEnd("'{0}' GetGalleryApplicationParameters", ProviderSettings.ProviderName); return result; } @@ -1179,13 +1248,13 @@ namespace WebsitePanel.Server } } - [WebMethod, SoapHeader("settings")] - public StringResultObject InstallGalleryApplication(string id, List updatedValues) + [WebMethod, SoapHeader("settings")] + public StringResultObject InstallGalleryApplication(int UserId, string id, List updatedValues, string languageId) { try { Log.WriteStart("'{0}' InstallGalleryApplication", ProviderSettings.ProviderName); - StringResultObject result = WebProvider.InstallGalleryApplication(id, updatedValues); + StringResultObject result = WebProvider.InstallGalleryApplication(UserId,id, updatedValues, languageId); Log.WriteEnd("'{0}' InstallGalleryApplication", ProviderSettings.ProviderName); return result; } diff --git a/WebsitePanel/Sources/WebsitePanel.Server/WebsitePanel.Server.csproj b/WebsitePanel/Sources/WebsitePanel.Server/WebsitePanel.Server.csproj index 4ae2bf2d..0953eeaa 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/WebsitePanel.Server.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Server/WebsitePanel.Server.csproj @@ -42,6 +42,14 @@ 618 + + False + ..\..\Lib\References\Microsoft\Microsoft.Web.Deployment.dll + + + False + ..\..\Lib\Microsoft.Web.PlatformInstaller.dll + False ..\..\Lib\Microsoft.Web.Services3.dll @@ -52,6 +60,8 @@ + + @@ -113,6 +123,7 @@ LyncServer.asmx Component + OCSEdgeServer.asmx Component @@ -206,6 +217,10 @@ {E91E52F3-9555-4D00-B577-2B1DBDD87CA7} WebsitePanel.Server.Utils + + {736FA0F0-ECA3-416E-B299-85CC425FFF44} + WebsitePanel.Server.WPIServiceContract + diff --git a/WebsitePanel/Sources/WebsitePanel.Server/WindowsServer.asmx.cs b/WebsitePanel/Sources/WebsitePanel.Server/WindowsServer.asmx.cs index e6769ca1..7c990684 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/WindowsServer.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server/WindowsServer.asmx.cs @@ -29,6 +29,9 @@ using System; using System.IO; using System.Data; +using System.Security; +using System.Text; +using System.Threading; using System.Web; using System.Diagnostics; using System.Collections; @@ -38,11 +41,20 @@ using System.Web.Services.Protocols; using System.ComponentModel; using System.Text.RegularExpressions; using System.ServiceProcess; +using System.ServiceModel; +using System.Runtime.Remoting; +using System.Runtime.Remoting.Channels; +using System.Runtime.Remoting.Channels.Tcp; using System.Management; +using System.Collections.Specialized; +using Microsoft.Web.PlatformInstaller; using Microsoft.Web.Services3; - using WebsitePanel.Providers.Utils; +using WebsitePanel.Server.Code; using WebsitePanel.Server.Utils; +using WebsitePanel.Providers; +using WebsitePanel.Server.WPIService; + namespace WebsitePanel.Server { @@ -280,6 +292,554 @@ namespace WebsitePanel.Server } #endregion + #region Web Platform Installer + + + + private string makeHref(string value) + { + if (string.IsNullOrEmpty(value)) + return value; + + //" qweqwe http://www.helicontech.com/zoo/feed/ asdasdasd" + Regex link =new Regex("(http[^\\s,]+)(?$1"); + } + + + private WPIProduct ProductToWPIProduct(Product product) + { + WPIProduct p = new WPIProduct(); + p.ProductId = product.ProductId; + p.Summary = product.Summary; + p.LongDescription = makeHref(product.LongDescription); + p.Published = product.Published; + p.Author = product.Author; + p.AuthorUri = (product.AuthorUri != null) ? product.AuthorUri.ToString() : ""; + p.Title = product.Title; + p.Link = (product.Link != null) ? product.Link.ToString() : ""; + p.Version = product.Version; + + if (product.Installers.Count > 0) + { + if (product.Installers[0].EulaUrl != null) + { + p.EulaUrl = product.Installers[0].EulaUrl.ToString(); + + } + + if (product.Installers[0].InstallerFile != null) + { + if (product.Installers[0].InstallerFile.InstallerUrl != null) + { + p.DownloadedLocation = product.Installers[0].InstallerFile.InstallerUrl.ToString(); + } + p.FileSize = product.Installers[0].InstallerFile.FileSize; + } + + } + + if (product.IconUrl != null) + { + p.Logo = product.IconUrl.ToString(); + } + + p.IsInstalled = product.IsInstalled(true); + + return p; + } + + [WebMethod] + public WPIProduct[] GetWPIProducts(string tabId, string keywordId) + { + + + try + { + Log.WriteStart("GetWPIProducts"); + List wpiProducts = new List(); + + + WpiHelper wpi = GetWpiFeed(); + + string feedLocation = null; + if (tabId != null) + { + Tab tab = wpi.GetTab(tabId); + ICollection feeds = tab.FeedList; + feedLocation = feeds.GetEnumerator().Current; + } + + List products = wpi.GetProducts(feedLocation, keywordId); + + if (products != null) + { + + + foreach (Product product in products) + { + if (null != product && !product.IsApplication) + { + wpiProducts.Add(ProductToWPIProduct(product)); + + } + } + + } + + + + Log.WriteEnd("GetWPIProducts"); + return wpiProducts.ToArray(); + } + catch (Exception ex) + { + Log.WriteError("GetWPIProducts", ex); + throw; + } + } + + + [WebMethod] + public WPIProduct[] GetWPIProductsFiltered(string filter) + { + + + try + { + Log.WriteStart("GetWPIProductsFiltered"); + List wpiProducts = new List(); + + + WpiHelper wpi = GetWpiFeed(); + + List products = wpi.GetProductsFiltered( filter); + + if (products != null) + { + + + foreach (Product product in products) + { + if (null != product && !product.IsApplication) + { + wpiProducts.Add(ProductToWPIProduct(product)); + + } + } + + } + + + + Log.WriteEnd("GetWPIProductsFiltered"); + return wpiProducts.ToArray(); + } + catch (Exception ex) + { + Log.WriteError("GetWPIProductsFiltered", ex); + throw; + } + } + + [WebMethod] + public WPITab[] GetWPITabs() + { + try + { + Log.WriteStart("GetWPITabs"); + + WpiHelper wpi = GetWpiFeed(); + + List result = new List(); + + foreach (Tab tab in wpi.GetTabs()) + { + result.Add(new WPITab(tab.Id, tab.Name)); + } + + + Log.WriteEnd("GetWPITabs"); + + return result.ToArray(); + } + catch (Exception ex) + { + Log.WriteError("GetWPITabs", ex); + throw; + } + } + + + static string[] FEEDS = new string[] + { + // "https://www.microsoft.com/web/webpi/3.0/WebProductList.xml", + // "http://www.helicontech.com/zoo/feed/" + }; + + [WebMethod] + public void InitWPIFeeds(string feedUrls) + { + if (string.IsNullOrEmpty(feedUrls)) + { + throw new Exception("Empty feed list"); + } + + string[] newFEEDS = feedUrls.Split(';'); + + if (newFEEDS.Length == 0) + { + throw new Exception("Empty feed list"); + } + if (!ArraysEqual(newFEEDS, FEEDS)) + { + Log.WriteInfo("InitWPIFeeds - new value: " + feedUrls); + + //Feeds settings have been channged + FEEDS = newFEEDS; + wpi = null; + + } + } + + + public static bool ArraysEqual(T[] a1, T[] a2) + { + if (ReferenceEquals(a1, a2)) + return true; + + if (a1 == null || a2 == null) + return false; + + if (a1.Length != a2.Length) + return false; + + EqualityComparer comparer = EqualityComparer.Default; + for (int i = 0; i < a1.Length; i++) + { + if (!comparer.Equals(a1[i], a2[i])) return false; + } + return true; + } + + [WebMethod] + public WPIKeyword[] GetWPIKeywords() + { + try + { + Log.WriteStart("GetWPIKeywords"); + + WpiHelper wpi = GetWpiFeed(); + + List result = new List(); + + result.Add(new WPIKeyword("", "All")); + + foreach (Keyword keyword in wpi.GetKeywords()) + { + if (!wpi.IsKeywordApplication(keyword)) + { + result.Add(new WPIKeyword(keyword.Id, keyword.Text)); + } + + } + + + Log.WriteEnd("GetWPIKeywords"); + + return result.ToArray(); + } + catch (Exception ex) + { + Log.WriteError("GetWPIKeywords", ex); + throw; + } + } + + + [WebMethod] + public WPIProduct[] GetWPIProductsWithDependencies(string[] products) + { + try + { + Log.WriteStart("GetWPIProductsWithDependencies"); + + WpiHelper wpi = GetWpiFeed(); + + List result = new List(); + foreach (Product product in wpi.GetProductsWithDependencies(products)) + { + result.Add(ProductToWPIProduct(product)); + } + + Log.WriteEnd("GetWPIProductsWithDependencies"); + + return result.ToArray(); + } + catch (Exception ex) + { + Log.WriteError("GetWPIProductsWithDependencies", ex); + throw; + } + } + + static Process _WpiServiceExe = null; + + [WebMethod] + public void InstallWPIProducts(string[] products) + { + try + { + Log.WriteStart("InstallWPIProducts"); + + StartWpiService(); + + RegisterWpiService(); + + WPIServiceContract client = new WPIServiceContract(); + + client.Initialize(FEEDS); + client.BeginInstallation(products); + + + + + + Log.WriteEnd("InstallWPIProducts"); + } + catch (Exception ex) + { + Log.WriteError("InstallWPIProducts", ex); + throw; + } + } + + private void StartWpiService() + { + string binFolder = HttpContext.Current.Server.MapPath("/bin/"); + + string newUserProfile = Path.Combine(Environment.ExpandEnvironmentVariables("%SystemRoot%"), "Temp\\zoo.wpi"); + string newAppData = Path.Combine(newUserProfile, "Roaming"); + string newLocalAppData = Path.Combine(newUserProfile, "Local"); + try + { + Directory.CreateDirectory(newUserProfile); + Directory.CreateDirectory(newAppData); + Directory.CreateDirectory(newLocalAppData); + } + catch (Exception) + { + //throw; + } + + + Process wpiServiceExe = new Process(); + wpiServiceExe.StartInfo = new ProcessStartInfo(Path.Combine(binFolder, "WebsitePanel.Server.WPIService.exe")); + wpiServiceExe.StartInfo.UseShellExecute = false; + wpiServiceExe.StartInfo.EnvironmentVariables["UserProfile"] = newUserProfile; + wpiServiceExe.StartInfo.EnvironmentVariables["LocalAppData"] = newLocalAppData; + wpiServiceExe.StartInfo.EnvironmentVariables["AppData"] = newAppData; + if (wpiServiceExe.Start()) + { + _WpiServiceExe = wpiServiceExe; + } + } + + [WebMethod] + public void CancelInstallWPIProducts() + { + try + { + Log.WriteStart("CancelInstallWPIProducts"); + + KillWpiService(); + + + Log.WriteEnd("CancelInstallWPIProducts"); + } + catch (Exception ex) + { + Log.WriteError("CancelInstallWPIProducts", ex); + throw; + } + } + + private void KillWpiService() + { + //kill own service + if (_WpiServiceExe != null && !_WpiServiceExe.HasExited) + { + _WpiServiceExe.Kill(); + _WpiServiceExe = null; + } + else + { + //find WebsitePanel.Server.WPIService.exe + Process[] wpiservices = Process.GetProcessesByName("WebsitePanel.Server.WPIService"); + foreach (Process p in wpiservices) + { + p.Kill(); + } + } + } + + [WebMethod] + public string GetWPIStatus() + { + try + { + Log.WriteStart("GetWPIStatus"); + + RegisterWpiService(); + + WPIServiceContract client = new WPIServiceContract(); + + string status = client.GetStatus(); + + Log.WriteEnd("GetWPIStatus"); + + return status; //OK + } + catch (Exception ex) + { + // done or error + + if (_WpiServiceExe == null || _WpiServiceExe.HasExited) + { + // reset WpiHelper for refresh status + wpi = null; + return ""; //OK + } + + Log.WriteError("GetWPIStatus", ex); + + return ex.ToString(); + } + } + + [WebMethod] + public string WpiGetLogFileDirectory() + { + try + { + Log.WriteStart("WpiGetLogFileDirectory"); + + RegisterWpiService(); + + WPIServiceContract client = new WPIServiceContract(); + + string result = client.GetLogFileDirectory(); + + Log.WriteEnd("WpiGetLogFileDirectory"); + + return result; //OK + } + catch (Exception ex) + { + + Log.WriteError("WpiGetLogFileDirectory", ex); + + throw; + } + } + + [WebMethod] + public SettingPair[] WpiGetLogsInDirectory(string Path) + { + try + { + Log.WriteStart("WpiGetLogsInDirectory"); + + ArrayList result = new ArrayList(); + + string[] filePaths = Directory.GetFiles(Path); + foreach (string filePath in filePaths) + { + using (StreamReader streamReader = new StreamReader(filePath)) + { + string fileContent = SecurityElement.Escape(StringUtils.CleanupASCIIControlCharacters(streamReader.ReadToEnd())); + result.Add(new SettingPair(filePath, fileContent)); + } + + } + + Log.WriteEnd("WpiGetLogFileDirectory"); + + return (SettingPair[])result.ToArray(typeof(SettingPair)); //OK + } + catch (Exception ex) + { + + Log.WriteError("WpiGetLogFileDirectory", ex); + + throw; + } + } + + + + + + static WpiHelper wpi = null; + WpiHelper GetWpiFeed() + { + if (FEEDS.Length == 0) + { + throw new Exception("Empty feed list"); + } + + if (null == wpi) + { + wpi = new WpiHelper(FEEDS); + } + return wpi; + } + + private static object _lockRegisterWpiService = new object(); + private void RegisterWpiService() + { + lock (_lockRegisterWpiService) + { + + + try + { + ChannelServices.RegisterChannel(new TcpChannel(), true); + } + catch (System.Exception) + { + //ignor + } + + if (null == RemotingConfiguration.IsWellKnownClientType(typeof(WPIServiceContract))) + { + RemotingConfiguration.RegisterWellKnownClientType(typeof(WPIServiceContract), string.Format("tcp://localhost:{0}/WPIServiceContract", WPIServiceContract.PORT)); + } + + try + { + WPIServiceContract client = new WPIServiceContract(); + client.Ping(); + } + catch (Exception) + { + //unable to connect + //try to restart service + KillWpiService(); + //StartWpiService(); + } + + + + + } + + + } + #endregion GetWPIProducts + + #region Event Viewer [WebMethod] public List GetLogNames() diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config index e15f3f0a..e8d06e78 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config @@ -174,7 +174,8 @@ - + + diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_Modules.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_Modules.ascx.resx index 3541969a..843fd123 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_Modules.ascx.resx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_Modules.ascx.resx @@ -378,6 +378,9 @@ Manage Windows Services + + Manage Web Platform Installer + My Databases diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_Pages.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_Pages.ascx.resx index 7a3e2bc4..1d3d1e32 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_Pages.ascx.resx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_Pages.ascx.resx @@ -337,7 +337,7 @@ Applications Installer - Microsoft Web App Gallery + Web App Gallery {user} - {space} - Applications Installer diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_SharedResources.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_SharedResources.ascx.resx index 4ce46d09..f1e54acc 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_SharedResources.ascx.resx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_SharedResources.ascx.resx @@ -873,6 +873,9 @@ Error saving server service settings + + Error loading feeds. Please check system settings + Error building hosting space summary letter @@ -4604,7 +4607,7 @@ OCS users quota has been reached. - Microsoft Web App Gallery + Web App Gallery We apologize for the inconvenience but the application download has been failed. Please contact your service provider to correct the issue. diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/App_LocalResources/ServersEditWebPlatformInstaller.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/App_LocalResources/ServersEditWebPlatformInstaller.ascx.resx new file mode 100644 index 00000000..c9a1b77b --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/App_LocalResources/ServersEditWebPlatformInstaller.ascx.resx @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Cancel + + + Continue + + + Pause + + + Start + + + Stop + + + No Windows Services found. + + + Id + + + Name + + + Status + + + Logo + + + Continuing + + + Paused + + + Pausing + + + Running + + + Starting + + + Stopped + + + Stopping + + + Add + + + Install + + + Install + + + Accept + + + Products to be installed + + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/App_LocalResources/WebApplicationGalleryParams.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/App_LocalResources/WebApplicationGalleryParams.ascx.resx index e14fede4..2a4caaa3 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/App_LocalResources/WebApplicationGalleryParams.ascx.resx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/App_LocalResources/WebApplicationGalleryParams.ascx.resx @@ -226,6 +226,12 @@ Choose your database: + + Database type + + + Choose your database type: + Create a new or use an existing database diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/WebAppGalleryHelpers.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/WebAppGalleryHelpers.cs index 67e812f1..f08fe6c1 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/WebAppGalleryHelpers.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/WebAppGalleryHelpers.cs @@ -39,6 +39,12 @@ namespace WebsitePanel.Portal return ES.Services.WebApplicationGallery.GetGalleryApplications(packageId, categoryId); } + public GalleryApplicationsResult GetGalleryApplicationsFiltered(string pattern, int packageId) + { + return ES.Services.WebApplicationGallery.GetGalleryApplicationsFiltered(packageId, pattern); + } + + public List GetGalleryApplicationsByServiceId(int serviceId) { GalleryApplicationsResult result = ES.Services.WebApplicationGallery.GetGalleryApplicationsByServiceId(serviceId); diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx index 32015972..3f4a170e 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx @@ -4,6 +4,7 @@ <%@ Register Src="../UserControls/EditDomainsList.ascx" TagName="EditDomainsList" TagPrefix="uc5" %> <%@ Register Src="../UserControls/CollapsiblePanel.ascx" TagPrefix="wsp" TagName="CollapsiblePanel" %> <%@ Register Src="../UserControls/PopupHeader.ascx" TagName="PopupHeader" TagPrefix="wsp" %> +<%@ Register src="../UserControls/EditFeedsList.ascx" tagname="EditFeedsList" tagprefix="uc6" %> <%@ Import Namespace="WebsitePanel.Portal.ProviderControls" %>

@@ -175,25 +176,36 @@  
+ + - - - - + + + + + + + + + + + + +
- - - -

-
Enable Microsoft feed + +
Enable HeliconTech feed + +
+

diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx.cs index b1b6c30a..c1a1d222 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx.cs @@ -127,7 +127,13 @@ namespace WebsitePanel.Portal.ProviderControls // ASP.NET 2.0 & 4.0 Bitness Mode Utils.SelectListItem(AspNetBitnessMode, settings[AspNetBitnessMode.ID]); - txtGalleryFeedUrl.Text = settings["GalleryXmlFeedUrl"]; + + + // WPI + wpiMicrosoftFeed.Checked = Utils.ParseBool(settings["FeedEnableMicrosoft"], true); + wpiHeliconTechFeed.Checked = Utils.ParseBool(settings["FeedEnableHelicon"], true); + wpiEditFeedsList.Value = settings["FeedUrls"]; + txtAspPath.Text = settings["AspPath"]; php4Path.Text = settings["Php4Path"]; @@ -219,8 +225,6 @@ namespace WebsitePanel.Portal.ProviderControls // ASP.NET 2.0 & 4.0 Bitness Mode settings[AspNetBitnessMode.ID] = AspNetBitnessMode.SelectedValue; - settings["GalleryXmlFeedUrl"] = txtGalleryFeedUrl.Text.Trim(); - settings["AspPath"] = txtAspPath.Text.Trim(); settings["Php4Path"] = php4Path.Text.Trim(); settings["PhpPath"] = txtPhpPath.Text.Trim(); @@ -243,7 +247,12 @@ namespace WebsitePanel.Portal.ProviderControls ActiveDirectoryIntegration.SaveSettings(settings); - settings["GalleryAppsFilter"] = GetAppsCatalogFilter(); + + + settings["FeedEnableMicrosoft"] = wpiMicrosoftFeed.Checked.ToString(); + settings["FeedEnableHelicon"] = wpiHeliconTechFeed.Checked.ToString(); + settings["FeedUrls"] = wpiEditFeedsList.Value; + settings["GalleryAppsFilter"] = GetAppsCatalogFilter(); if (WDeployEnabledCheckBox.Checked) { diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx.designer.cs index 8ebc30d1..f266966a 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx.designer.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/IIS70_Settings.ascx.designer.cs @@ -1,3 +1,32 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + //------------------------------------------------------------------------------ // // This code was generated by a tool. @@ -273,24 +302,6 @@ namespace WebsitePanel.Portal.ProviderControls { /// protected global::System.Web.UI.WebControls.Label lblWebAppGallery; - /// - /// lblGalleryFeed control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.Label lblGalleryFeed; - - /// - /// txtGalleryFeedUrl control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.TextBox txtGalleryFeedUrl; - /// /// FilterDialogButton control. /// @@ -300,6 +311,33 @@ namespace WebsitePanel.Portal.ProviderControls { /// protected global::System.Web.UI.WebControls.LinkButton FilterDialogButton; + /// + /// wpiMicrosoftFeed control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.CheckBox wpiMicrosoftFeed; + + /// + /// wpiHeliconTechFeed control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.CheckBox wpiHeliconTechFeed; + + /// + /// wpiEditFeedsList control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.UserControls.EditFeedsList wpiEditFeedsList; + /// /// FilterDialogPanel control. /// diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditServer.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditServer.ascx index 6eba6725..36f559d8 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditServer.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditServer.ascx @@ -196,6 +196,12 @@ meta:resourcekey="lnkEventViewer" Text="Event Viewer"> + + +     + +     // This code was generated by a tool. -// Runtime Version:2.0.50727.1873 // // Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. +// the code is regenerated. // //------------------------------------------------------------------------------ @@ -400,6 +428,15 @@ namespace WebsitePanel.Portal { /// protected global::System.Web.UI.WebControls.HyperLink lnkEventViewer; + /// + /// lnkPlatformInstaller control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.HyperLink lnkPlatformInstaller; + /// /// lnkServerReboot control. /// diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditSystemProcesses.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditSystemProcesses.ascx.designer.cs index 60334595..d7ad231d 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditSystemProcesses.ascx.designer.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditSystemProcesses.ascx.designer.cs @@ -1,21 +1,98 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.42 // // Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. +// the code is regenerated. // //------------------------------------------------------------------------------ namespace WebsitePanel.Portal { + public partial class ServersEditSystemProcesses { - protected WebsitePanel.Portal.ServerHeaderControl ServerHeaderControl1; - protected System.Web.UI.WebControls.Button btnCancel; - protected System.Web.UI.UpdateProgress updatePanelProgress; - protected System.Web.UI.UpdatePanel ItemsUpdatePanel; - protected System.Web.UI.Timer itemsTimer; - protected System.Web.UI.WebControls.GridView gvProcesses; + + /// + /// ServerHeaderControl1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.ServerHeaderControl ServerHeaderControl1; + + /// + /// btnCancel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnCancel; + + /// + /// updatePanelProgress control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.UpdateProgress updatePanelProgress; + + /// + /// ItemsUpdatePanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.UpdatePanel ItemsUpdatePanel; + + /// + /// itemsTimer control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.Timer itemsTimer; + + /// + /// gvProcesses control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.GridView gvProcesses; } } diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx new file mode 100644 index 00000000..456b474f --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx @@ -0,0 +1,327 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ServersEditWebPlatformInstaller.ascx.cs" Inherits="WebsitePanel.Portal.ServersEditWebPlatformInstaller" %> +<%@ Import Namespace="WebsitePanel.Portal" %> +<%@ Register Src="ServerHeaderControl.ascx" TagName="ServerHeaderControl" TagPrefix="uc1" %> +<%@ Register Src="UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %> +<%@ Register Src="UserControls/PopupHeader.ascx" TagName="PopupHeader" TagPrefix="wsp" %> +<%@ Register Src="UserControls/EditFeedsList.ascx" TagName="EditFeedsList" TagPrefix="uc6" %> + + + + + + + + + +<%-- + + + + + + + + +--%> + + + + + + + + + + + + + + +
+ + + + +
+
+ +
+ + +
+ + + + + + + + + + + + + + + + + + +

<%# Eval("Title")%>

+

<%# Eval("Summary") %>

+ + +

+ More information +  ·  + Version: <%# Eval("Version")%> +  ·  + Published: <%# ((DateTime)Eval("Published")).ToShortDateString() %> +

+ +
+
+ + + + + + + + + + + +
+
+ +
+ +
+ +
+ + +
+ + +
+

No products selected to install

+
+
+
+ +
+
+
+ + + +
+

Products to be installed

+

Review the following list of software to be installed and Windows components to be turned on.

+
+ + + + + + +

<%# Eval("Title")%>

+

+ License Agreement + <%# Eval("DownloadedLocation")%> + +

+
+
+ +
+
+
+
+ +
+

+ Warning: During product installation your IIS process might be restarted depending on the package installed, + causing all users connected to the control panel to lose their session, requiring them to re-login after completion. + Please assure that no other users are processing requests before you start this process as it might cause corruption + if they are in the middle of an update. +

+
+

+ By clicking "I Accept", you agree to the license terms for the software listed above. If you do not agree + to all of the license terms, click "I Decline". +

+
+ + + +
+ + + + + +

Selected products are installed now:

+
+ + initializing... + +
+
+ +
+
+
+ +
+

Selected products are successfully installed + + +

+

Some products installation are failed

+
+
+ + +

+                
+
+
+
+
+ + +
+ +
+
+ +
+ + diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx.cs new file mode 100644 index 00000000..1b2c1156 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx.cs @@ -0,0 +1,569 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Configuration; +using System.Data; +using System.Text; +using System.Web; +using System.Web.Security; +using System.Web.UI; +using System.Web.UI.HtmlControls; +using System.Web.UI.WebControls; +using System.Web.UI.WebControls.WebParts; +using WebsitePanel.Server; +using WebsitePanel.Providers; + +namespace WebsitePanel.Portal +{ + + public partial class ServersEditWebPlatformInstaller : WebsitePanelModuleBase + { + protected const string _wpiLogsDirViewStateKey = "WPI_LOGS_DIR"; + + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + try + { + ES.Services.Servers.InitWPIFeeds(PanelRequest.ServerId); + } + catch + { + ProductsPanel.Visible = false; + keywordsList.Visible = false; + SearchPanel.Visible = false; + InstallButtons1.Visible = false; + InstallButtons2.Visible = false; + + ShowWarningMessage("No products available. Please enable Web Platfrom Installer feeds in System Settings."); + + return; + } + + + + ProgressAnimation.ImageUrl = PortalUtils.GetThemedImage("indicator_medium.gif"); + ViewState["SearchResultShown"] = false; + BindWpiProducts(); + + string message = UpdateProgress(); + if (!string.IsNullOrEmpty(message)) + { + ShowProgressPanel(); + } + + } + } + + private void BindWpiProducts() + { + try + { + + keywordsList.Items.Clear(); + List keywords = new List(ES.Services.Servers.GetWPIKeywords(PanelRequest.ServerId)); + keywords.Add(new WPIKeyword("Show installed", "Show Installed")); + keywordsList.DataSource = keywords; + keywordsList.DataTextField = "Text"; + keywordsList.DataValueField = "ID"; + keywordsList.DataBind(); + + if (keywordsList.Items.Count > 0) + { + keywordsList.Items[0].Attributes["class"] = "selected"; + } + + gvWpiProducts.DataSource = FilterInstaledProducts(ES.Services.Servers.GetWPIProducts(PanelRequest.ServerId, null, SelectedKeywordValue)); + gvWpiProducts.DataBind(); + + } + catch (Exception ex) + { + ShowErrorMessage("SERVER_GET_WIN_SERVICES", ex); + return; + } + } + + private string SelectedKeywordValue + { + get + { + return IsShowInstalledPseudoKeywordSelected ? null : keywordsList.SelectedValue; + } + } + + private bool IsShowInstalledPseudoKeywordSelected + { + get { return keywordsList.SelectedIndex == keywordsList.Items.Count - 1; } + } + + + private ArrayList GetProductsToInstallList() + { + if (ViewState["wpiProductsForInstall"] != null) + { + return (ArrayList)ViewState["wpiProductsForInstall"]; + } + return new ArrayList(); + } + + private void SetProductsToInstallList(ArrayList wpiProductsForInstall) + { + ViewState["wpiProductsForInstall"] = wpiProductsForInstall; + } + + private void ShowProductsGrid() + { + ProductsPanel.Visible = true; + keywordsList.Visible = true; + SearchPanel.Visible = true; + InstallButtons1.Visible = true; + InstallButtons2.Visible = true; + + NoProductsSelectedPanel.Visible = false; + + InstallPanel.Visible = false; + AceptDEclineButtons.Visible = false; + ProgressPanel.Visible = false; + ProgressTimer.Enabled = false; + InstallCompletedPanel.Visible = false; + + ProductsPanel.Update(); + InstallPanel.Update(); + ProgressPanel.Update(); + } + + private void ShowNoProductsSelectedPanel() + { + ProductsPanel.Visible = false; + keywordsList.Visible = false; + SearchPanel.Visible = false; + InstallButtons1.Visible = false; + InstallButtons2.Visible = false; + + NoProductsSelectedPanel.Visible = true; + + InstallPanel.Visible = false; + AceptDEclineButtons.Visible = false; + ProgressPanel.Visible = false; + ProgressTimer.Enabled = false; + InstallCompletedPanel.Visible = false; + + ProductsPanel.Update(); + InstallPanel.Update(); + ProgressPanel.Update(); + } + + private void ShowSelectedProducts() + { + ProductsPanel.Visible = false; + keywordsList.Visible = false; + SearchPanel.Visible = false; + InstallButtons1.Visible = false; + InstallButtons2.Visible = false; + ProgressPanel.Visible = false; + ProgressTimer.Enabled = false; + InstallCompletedPanel.Visible = false; + + InstallPanel.Visible = true; + AceptDEclineButtons.Visible = true; + + ProductsPanel.Update(); + InstallPanel.Update(); + ProgressPanel.Update(); + } + + private void ShowProgressPanel() + { + ProductsPanel.Visible = false; + keywordsList.Visible = false; + SearchPanel.Visible = false; + InstallButtons1.Visible = false; + InstallButtons2.Visible = false; + InstallPanel.Visible = false; + AceptDEclineButtons.Visible = false; + InstallCompletedPanel.Visible = false; + + ProgressPanel.Visible = true; + ProgressTimer.Enabled = true; + + ProductsPanel.Update(); + InstallPanel.Update(); + ProgressPanel.Update(); + } + + protected void gvWpiProducts_PageIndexChanging(object sender, GridViewPageEventArgs e) + { + gvWpiProducts.PageIndex = ((System.Web.UI.WebControls.GridViewPageEventArgs)e).NewPageIndex; + if ((bool)ViewState["SearchResultShown"]) + { + gvWpiProducts.DataSource = GetWpiProductsFiltered(); + } + else + { + gvWpiProducts.DataSource = FilterInstaledProducts(ES.Services.Servers.GetWPIProducts(PanelRequest.ServerId, null, SelectedKeywordValue)); + } + gvWpiProducts.DataBind(); + + } + + + protected void gvWpiProducts_RowCommand(object sender, GridViewCommandEventArgs e) + { + + if (e.CommandName == "WpiAdd") + { + ((Button)e.CommandSource).Text = "- remove"; + ((Button)e.CommandSource).CommandName = "WpiRemove"; + + ArrayList wpiProductsForInstall = GetProductsToInstallList(); + wpiProductsForInstall.Add(e.CommandArgument.ToString()); + SetProductsToInstallList(wpiProductsForInstall); + + } + + if (e.CommandName == "WpiRemove") + { + ((Button)e.CommandSource).Text = "+ add"; + ((Button)e.CommandSource).CommandName = "WpiAdd"; + + ArrayList wpiProductsForInstall = GetProductsToInstallList(); + wpiProductsForInstall.Remove(e.CommandArgument.ToString()); + SetProductsToInstallList(wpiProductsForInstall); + + + } + + } + + + private void UpdateProductsByKeyword() + { + gvWpiProducts.DataSource = FilterInstaledProducts( + ES.Services.Servers.GetWPIProducts(PanelRequest.ServerId, null, SelectedKeywordValue) + ); + gvWpiProducts.DataBind(); + } + + protected void keywordsList_SelectedIndexChanged(object sender, EventArgs e) + { + gvWpiProducts.PageIndex = 0; + + keywordsList.SelectedItem.Attributes["class"] = "selected"; + searchBox.Text = ""; + + UpdateProductsByKeyword(); + } + + protected void btnInstall_Click(object sender, EventArgs e) + { + string[] productsToInstall = (string[]) GetProductsToInstallList().ToArray(typeof (string)); + if (null == productsToInstall || productsToInstall.Length == 0) + { + ShowNoProductsSelectedPanel(); + } + else + { + // get dependencies and show it + gvWpiInstall.DataSource = ES.Services.Servers.GetWPIProductsWithDependencies(PanelRequest.ServerId, productsToInstall); + gvWpiInstall.DataBind(); + ShowSelectedProducts(); + } + } + + protected void btnDecline_Click(object sender, EventArgs e) + { + ShowProductsGrid(); + } + + private IAsyncResult WPIInstallationResult; + protected void btnAccept_Click(object sender, EventArgs e) + { + WPIInstallationResult = ES.Services.Servers.BeginInstallWPIProducts( + PanelRequest.ServerId, + (string[])GetProductsToInstallList().ToArray(typeof(string)), + null, + null + ); + ShowProgressPanel(); + UpdateProgress(); + } + + private string UpdateProgress() + { + + try + { + string wpiLogsDir = ViewState[_wpiLogsDirViewStateKey] as string; + if (string.IsNullOrEmpty(wpiLogsDir)) + { + wpiLogsDir = ES.Services.Servers.WpiGetLogFileDirectory(PanelRequest.ServerId); + ViewState[_wpiLogsDirViewStateKey] = wpiLogsDir; + } + } + catch + { + // + } + + + string message = ES.Services.Servers.GetWPIStatus(PanelRequest.ServerId); + if (!string.IsNullOrEmpty(message)) + { + ProgressMessage.Text = message.Replace("\n", "
"); + } + else + { + //ProgressMessage.Text = "please wait..."; + } + + + return message; + } + + protected void ProgressTimerTick(object sender, EventArgs e) + { + string message = UpdateProgress(); + + if (string.IsNullOrEmpty(message)) + { + ShowInstallCompletedPanel(); + //ProgressTimer.Enabled = false; + } + else if (message.IndexOf("failed", StringComparison.OrdinalIgnoreCase) > 0) + { + // some installation failed + ShowInstallFailedPanel(); + } + } + + private void ShowInstallFailedPanel() + { + ProgressMessagePanel.Visible = true; + InstallCompletedPanel.Visible = true; + ProgressAnimation.Style["display"] = "none"; + CancelInstall.Visible = false; + + LabelInstallationFailed.Visible = true; + LabelInstallationSuccess.Visible = false; + + ShowLogButton(); + } + + private void ShowInstallCompletedPanel() + { + if (!LabelInstallationFailed.Visible) + { + ProgressMessagePanel.Visible = false; + } + InstallCompletedPanel.Visible = true; + ProgressAnimation.Style["display"] = "none"; + + if (!InstalledProductsList.Visible) + { + string[] productsToInstall = (string[]) GetProductsToInstallList().ToArray(typeof (string)); + foreach (string product in productsToInstall) + { + InstalledProductsList.Items.Add(new ListItem(product)); + } + + InstalledProductsList.Visible = true; + } + + ShowLogButton(); + } + + private void ShowLogButton() + { + string wpiLogsDir = ViewState[_wpiLogsDirViewStateKey] as string; + if (!string.IsNullOrEmpty(wpiLogsDir)) + { + ShowLogsButton.Visible = true; + } + } + + protected void gvWpiInstall_RowDataBound(object sender, GridViewRowEventArgs e) + { + WPIProduct p = (WPIProduct)e.Row.DataItem; + if (p != null) + { + Label labelFileSize = (Label)e.Row.FindControl("downloadSize"); + if (p.FileSize == 0 ) + { + if (labelFileSize != null) + { + labelFileSize.Visible = false; + } + } + else + { + if (labelFileSize != null) + { + labelFileSize.Text += " " + p.FileSize + " Kb"; + } + } + + + if (string.IsNullOrEmpty( p.EulaUrl ) ) + { + HyperLink hl = (HyperLink)e.Row.FindControl("eulaLink"); + if (hl != null) + { + hl.Visible = false; + } + } + + if (string.IsNullOrEmpty( p.DownloadedLocation ) ) + { + Label label = (Label)e.Row.FindControl("labelDownloaded"); + if (label != null) + { + label.Visible = false; + } + } + } + } + + + protected void BackToGalleryButtonClick(object sender, EventArgs e) + { + Response.Redirect(EditUrl("ServerID", PanelRequest.ServerId.ToString(), "edit_platforminstaller")); + } + + protected void CacnelInstallButtonClick(object sender, EventArgs e) + { + ES.Services.Servers.CancelInstallWPIProducts(PanelRequest.ServerId); + ProgressMessage.Text = "Canceling..."; + LabelInstallationSuccess.Text = "Installation canceled"; + } + + protected void NoProductsBackButtonClick(object sender, EventArgs e) + { + ShowProductsGrid(); + } + + protected string IsAddedText(string productId) + { + if ( GetProductsToInstallList().Contains(productId) ) + { + return "- remove"; + } + else + { + return "+ add"; + } + } + + protected void btnCancel_Click(object sender, EventArgs e) + { + Response.Redirect(EditUrl("ServerID", PanelRequest.ServerId.ToString(), "edit_server")); + } + + protected void SearchButton_Click(object sender, EventArgs e) + { + keywordsList.ClearSelection(); + ViewState["SearchResultShown"] = true; + gvWpiProducts.PageIndex = 0; + gvWpiProducts.DataSource = GetWpiProductsFiltered(); + gvWpiProducts.DataBind(); + } + + private WPIProduct[] GetWpiProductsFiltered() + { + return ES.Services.Servers.GetWPIProductsFiltered(PanelRequest.ServerId, searchBox.Text); + } + + protected ArrayList FilterInstaledProducts(WPIProduct[] products) + { + ViewState["SearchResultShown"] = false; + + ArrayList result = new ArrayList(); + + foreach (WPIProduct product in products) + { + if (product.IsInstalled == IsShowInstalledPseudoKeywordSelected) + { + result.Add(product); + } + } + + return result; + } + + protected string FixDefaultLogo(string imgUrl) + { + if (string.IsNullOrEmpty(imgUrl)) + { + return GetThemedImage("../icons/dvd_disc_48.png"); + } + + return imgUrl; + } + + protected void ShowLogsButton_OnClick(object sender, EventArgs e) + { + //show logs + try + { + string wpiLogsDir = ViewState[_wpiLogsDirViewStateKey] as string; + + if (!string.IsNullOrEmpty(wpiLogsDir)) + { + //Get logs !!! + object[] logsEntrys = ES.Services.Servers.WpiGetLogsInDirectory(PanelRequest.ServerId, wpiLogsDir); + + WpiLogsPanel.Visible = true; + + StringBuilder sb = new StringBuilder(); + + foreach (SettingPair entry in logsEntrys) + { + string fileName = (string)entry.Name; + string fileContent = (string)entry.Value; + sb.AppendLine().AppendFormat("

{0}

", fileName).AppendLine().Append(fileContent).AppendLine(); + } + + WpiLogsPre.InnerHtml = sb.ToString(); + + ShowLogsButton.Visible = false; + ProgressTimer.Enabled = false; + } + + } + catch (Exception ex) + { + WpiLogsPanel.Visible = true; + WpiLogsPre.InnerText = ex.ToString(); + } + } + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx.designer.cs new file mode 100644 index 00000000..15aaca0c --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWebPlatformInstaller.ascx.designer.cs @@ -0,0 +1,377 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace WebsitePanel.Portal { + + + public partial class ServersEditWebPlatformInstaller { + + /// + /// asyncTasks control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks; + + /// + /// ServerHeaderControl1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.ServerHeaderControl ServerHeaderControl1; + + /// + /// SearchPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel SearchPanel; + + /// + /// keywordsList control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.RadioButtonList keywordsList; + + /// + /// searchBox control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox searchBox; + + /// + /// ProductSearchGo control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.ImageButton ProductSearchGo; + + /// + /// InstallButtons2 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl InstallButtons2; + + /// + /// btnInstall2 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnInstall2; + + /// + /// btnCancel2 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnCancel2; + + /// + /// ProductsPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.UpdatePanel ProductsPanel; + + /// + /// gvWpiProducts control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.GridView gvWpiProducts; + + /// + /// InstallButtons1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl InstallButtons1; + + /// + /// btnInstall1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnInstall1; + + /// + /// btnCancel1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnCancel1; + + /// + /// NoProductsSelectedPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel NoProductsSelectedPanel; + + /// + /// NoProductsBackButton control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button NoProductsBackButton; + + /// + /// InstallPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.UpdatePanel InstallPanel; + + /// + /// gvWpiInstall control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.GridView gvWpiInstall; + + /// + /// AceptDEclineButtons control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl AceptDEclineButtons; + + /// + /// btnAccept control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnAccept; + + /// + /// btnDecline control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnDecline; + + /// + /// btnCancel3 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnCancel3; + + /// + /// ProgressPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.UpdatePanel ProgressPanel; + + /// + /// ProgressTimer control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.Timer ProgressTimer; + + /// + /// ProgressMessagePanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel ProgressMessagePanel; + + /// + /// ProgressAnimation control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Image ProgressAnimation; + + /// + /// ProgressMessage control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label ProgressMessage; + + /// + /// CancelInstall control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button CancelInstall; + + /// + /// InstallCompletedPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel InstallCompletedPanel; + + /// + /// LabelInstallationSuccess control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label LabelInstallationSuccess; + + /// + /// InstalledProductsList control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.BulletedList InstalledProductsList; + + /// + /// LabelInstallationFailed control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label LabelInstallationFailed; + + /// + /// ShowLogsButton control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button ShowLogsButton; + + /// + /// WpiLogsPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel WpiLogsPanel; + + /// + /// WpiLogsPre control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl WpiLogsPre; + + /// + /// BackToGalleryButton control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button BackToGalleryButton; + + /// + /// btnBackToServer control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnBackToServer; + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWindowsServices.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWindowsServices.ascx.designer.cs index b18b0e24..d316bb5b 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWindowsServices.ascx.designer.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ServersEditWindowsServices.ascx.designer.cs @@ -1,21 +1,98 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.42 // // Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. +// the code is regenerated. // //------------------------------------------------------------------------------ namespace WebsitePanel.Portal { + public partial class ServersEditWindowsServices { - protected WebsitePanel.Portal.ServerHeaderControl ServerHeaderControl1; - protected System.Web.UI.WebControls.Button btnCancel; - protected System.Web.UI.UpdateProgress updatePanelProgress; - protected System.Web.UI.UpdatePanel ItemsUpdatePanel; - protected System.Web.UI.Timer itemsTimer; - protected System.Web.UI.WebControls.GridView gvServices; + + /// + /// ServerHeaderControl1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.ServerHeaderControl ServerHeaderControl1; + + /// + /// btnCancel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnCancel; + + /// + /// updatePanelProgress control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.UpdateProgress updatePanelProgress; + + /// + /// ItemsUpdatePanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.UpdatePanel ItemsUpdatePanel; + + /// + /// itemsTimer control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.Timer itemsTimer; + + /// + /// gvServices control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.GridView gvServices; } } diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SystemSettings.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SystemSettings.ascx index 1441bac1..51c37f47 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SystemSettings.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SystemSettings.ascx @@ -1,5 +1,6 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="SystemSettings.ascx.cs" Inherits="WebsitePanel.Portal.SystemSettings" %> <%@ Register TagPrefix="wsp" TagName="CollapsiblePanel" Src="UserControls/CollapsiblePanel.ascx" %> +<%@ Register src="UserControls/EditFeedsList.ascx" tagname="EditFeedsList" tagprefix="uc1" %>
@@ -39,6 +40,30 @@ + + + + + + + + + + + + + + + +
Enable Microsoft feed + +
Enable HeliconTech feed + +
+ + +
// This code was generated by a tool. -// Runtime Version:2.0.50727.42 // // Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. +// the code is regenerated. // //------------------------------------------------------------------------------ namespace WebsitePanel.Portal { + public partial class SystemSettings { - protected WebsitePanel.Portal.CollapsiblePanel lclSmtpSettings; - protected System.Web.UI.WebControls.Panel SmtpPanel; - protected System.Web.UI.WebControls.TextBox txtSmtpServer; - protected System.Web.UI.WebControls.TextBox txtSmtpPort; - protected System.Web.UI.WebControls.TextBox txtSmtpUser; - protected System.Web.UI.WebControls.TextBox txtSmtpPassword; - protected System.Web.UI.WebControls.Localize locEnableSsl; - protected System.Web.UI.WebControls.CheckBox chkEnableSsl; - protected WebsitePanel.Portal.CollapsiblePanel lclBackupSettings; - protected System.Web.UI.WebControls.Panel BackupPanel; - protected System.Web.UI.WebControls.Localize Localize1; - protected System.Web.UI.WebControls.TextBox txtBackupsPath; - protected System.Web.UI.WebControls.Button btnSaveSettings; + + /// + /// lclSmtpSettings control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.CollapsiblePanel lclSmtpSettings; + + /// + /// SmtpPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel SmtpPanel; + + /// + /// txtSmtpServer control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox txtSmtpServer; + + /// + /// txtSmtpPort control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox txtSmtpPort; + + /// + /// txtSmtpUser control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox txtSmtpUser; + + /// + /// txtSmtpPassword control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox txtSmtpPassword; + + /// + /// locEnableSsl control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Localize locEnableSsl; + + /// + /// chkEnableSsl control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.CheckBox chkEnableSsl; + + /// + /// lclBackupSettings control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.CollapsiblePanel lclBackupSettings; + + /// + /// BackupPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel BackupPanel; + + /// + /// Localize1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Localize Localize1; + + /// + /// txtBackupsPath control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox txtBackupsPath; + + /// + /// lclWpiSettings control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.CollapsiblePanel lclWpiSettings; + + /// + /// WpiPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel WpiPanel; + + /// + /// wpiMicrosoftFeed control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.CheckBox wpiMicrosoftFeed; + + /// + /// wpiHeliconTechFeed control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.CheckBox wpiHeliconTechFeed; + + /// + /// wpiEditFeedsList control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.UserControls.EditFeedsList wpiEditFeedsList; + + /// + /// btnSaveSettings control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnSaveSettings; } } diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/App_LocalResources/EditFeedsList.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/App_LocalResources/EditFeedsList.ascx.resx new file mode 100644 index 00000000..659b5a3b --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/App_LocalResources/EditFeedsList.ascx.resx @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Add + + + Delete + + + return confirm('Delete item?'); + + + The list is empty. + + + Additional Name Server: + + + Primary Name Server: + + + Secondary Name Server: + + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/DomainListControlBase.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/DomainListControlBase.cs new file mode 100644 index 00000000..8bb18cfa --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/DomainListControlBase.cs @@ -0,0 +1,184 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Web.UI.WebControls; + + +namespace WebsitePanel.Portal.UserControls +{ + public abstract class DomainListControlBase : WebsitePanelControlBase + { + # region Properties + + protected abstract Button AddButton { get; } + protected abstract GridView Grid { get; } + + public Boolean DisplayNames + { + get { return Grid.Columns[ 0 ].Visible; } + set { Grid.Columns[ 0 ].Visible = value; } + } + + + public String Value + { + get + { + var items = CollectFormData( false ); + return String.Join( ";", items.ToArray() ); + } + + set + { + var items = new List(); + if ( !String.IsNullOrEmpty( value ) ) + { + var parts = value.Split( ';' ); + items.AddRange( from part in parts where part.Trim() != "" select part.Trim() ); + } + + // save items + _loaded_items = items.ToArray(); + + if ( IsPostBack ) + { + BindItems( _loaded_items ); + } + } + } + + # endregion + + + protected void Page_Load( Object sender, EventArgs e ) + { + if ( !IsPostBack ) + { + BindItems( _loaded_items ); // empty list + } + } + + + private void BindItems( IEnumerable items ) + { + Grid.DataSource = items; + Grid.DataBind(); + } + + + public List CollectFormData( Boolean include_empty ) + { + var items = new List(); + foreach ( GridViewRow row in Grid.Rows ) + { + var txt_name = (TextBox)row.FindControl( _txt_control_name ); + var val = txt_name.Text.Trim(); + + if ( include_empty || "" != val ) + { + items.Add( val ); + } + } + + return items; + } + + + # region Events + + protected void BtnAddClick( Object sender, EventArgs e) + { + var items = CollectFormData( true ); + + // add empty string + items.Add( "" ); + + // bind items + BindItems( items.ToArray() ); + } + + + protected void ListRowCommand( Object sender, GridViewCommandEventArgs e ) + { + if ( "delete_item" != e.CommandName ) + { + return; + } + + var items = CollectFormData(true); + + // remove error + items.RemoveAt( Utils.ParseInt( e.CommandArgument, 0 ) ); + + // bind items + BindItems(items.ToArray()); + } + + + protected void ListRowDataBound( Object sender, GridViewRowEventArgs e ) + { + var lbl_name = (Label)e.Row.FindControl( _lbl_control_name ); + var txt_name = (TextBox)e.Row.FindControl( _txt_control_name ); + var cmd_delete = (ImageButton)e.Row.FindControl( _delete_control_name ); + + if ( null == lbl_name ) + { + return; + } + + var val = (String)e.Row.DataItem; + txt_name.Text = val; + + var pos = ( e.Row.RowIndex < 2 ) + ? e.Row.RowIndex.ToString( CultureInfo.InvariantCulture ) + : ""; + lbl_name.Text = GetLocalizedString( "Item" + pos + ".Text" ); + + cmd_delete.CommandArgument = e.Row.RowIndex.ToString( CultureInfo.InvariantCulture ); + } + + # endregion + + + # region Fields + + protected String[] _loaded_items = new String[] {}; + + protected String _txt_control_name; + protected String _lbl_control_name; + protected String _delete_control_name; + + # endregion + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx index 405828b0..860101f8 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx @@ -2,12 +2,12 @@
+ CssClass="Button2" CausesValidation="false" OnClick="BtnAddClick"/>
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx.cs index 22800cb5..0a94a6af 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx.cs @@ -26,134 +26,29 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -using System; -using System.Data; -using System.Configuration; -using System.Collections; -using System.Collections.Generic; -using System.Web; -using System.Web.Security; -using System.Web.UI; using System.Web.UI.WebControls; -using System.Web.UI.WebControls.WebParts; -using System.Web.UI.HtmlControls; namespace WebsitePanel.Portal.UserControls { - public partial class EditDomainsList : WebsitePanelControlBase + public partial class EditDomainsList : DomainListControlBase { - public bool DisplayNames + public EditDomainsList() { - get { return gvDomains.Columns[0].Visible; } - set { gvDomains.Columns[0].Visible = value; } + _txt_control_name = "txtDomainName"; + _lbl_control_name = "lblDomainName"; + _delete_control_name = "cmdDeleteDomain"; } - public string Value + + protected override Button AddButton { - get { return GetDomainsValue(); } - set { SetDomainsValue(value); } + get { return btnAddDomain; } } - private string GetDomainsValue() + + protected override GridView Grid { - List items = CollectFormData(false); - return String.Join(";", items.ToArray()); - } - - private void SetDomainsValue(string s) - { - List items = new List(); - if (!String.IsNullOrEmpty(s)) - { - string[] parts = s.Split(';'); - foreach (string part in parts) - { - if (part.Trim() != "") - items.Add(part.Trim()); - } - } - - // save items - loadItems = items.ToArray(); - - if (IsPostBack) - { - BindItems(loadItems); - } - } - - private string[] loadItems = new string[] { }; - - protected void Page_Load(object sender, EventArgs e) - { - if (!IsPostBack) - { - BindItems(loadItems); // empty list - } - } - - private void BindItems(string[] items) - { - gvDomains.DataSource = items; - gvDomains.DataBind(); - } - - public List CollectFormData(bool includeEmpty) - { - List items = new List(); - foreach (GridViewRow row in gvDomains.Rows) - { - TextBox txtDomainName = (TextBox)row.FindControl("txtDomainName"); - string val = txtDomainName.Text.Trim(); - - if (includeEmpty || val != "") - items.Add(val); - } - - return items; - } - - protected void btnAddDomain_Click(object sender, EventArgs e) - { - List items = CollectFormData(true); - - // add empty string - items.Add(""); - - // bind items - BindItems(items.ToArray()); - } - - protected void gvDomains_RowCommand(object sender, GridViewCommandEventArgs e) - { - if (e.CommandName == "delete_item") - { - List items = CollectFormData(true); - - // remove error - items.RemoveAt(Utils.ParseInt((string)e.CommandArgument, 0)); - - // bind items - BindItems(items.ToArray()); - } - } - - protected void gvDomains_RowDataBound(object sender, GridViewRowEventArgs e) - { - Label lblDomainName = (Label)e.Row.FindControl("lblDomainName"); - TextBox txtDomainName = (TextBox)e.Row.FindControl("txtDomainName"); - ImageButton cmdDeleteDomain = (ImageButton)e.Row.FindControl("cmdDeleteDomain"); - - if (lblDomainName != null) - { - string val = (string)e.Row.DataItem; - txtDomainName.Text = val; - - string pos = (e.Row.RowIndex < 2) ? e.Row.RowIndex.ToString() : ""; - lblDomainName.Text = GetLocalizedString("Item" + pos + ".Text"); - - cmdDeleteDomain.CommandArgument = e.Row.RowIndex.ToString(); - } + get { return gvDomains; } } } } \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx.designer.cs index 9ace0ecf..15251b89 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx.designer.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditDomainsList.ascx.designer.cs @@ -1,17 +1,62 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.42 // // Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. +// the code is regenerated. // //------------------------------------------------------------------------------ namespace WebsitePanel.Portal.UserControls { + public partial class EditDomainsList { - protected System.Web.UI.WebControls.Button btnAddDomain; - protected System.Web.UI.WebControls.GridView gvDomains; + + /// + /// btnAddDomain control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnAddDomain; + + /// + /// gvDomains control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.GridView gvDomains; } } diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx new file mode 100644 index 00000000..a327dba9 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx @@ -0,0 +1,38 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="EditFeedsList.ascx.cs" Inherits="WebsitePanel.Portal.UserControls.EditFeedsList" %> +
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx.cs new file mode 100644 index 00000000..9e4ec30d --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx.cs @@ -0,0 +1,54 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +using System.Web.UI.WebControls; + +namespace WebsitePanel.Portal.UserControls +{ + public partial class EditFeedsList : DomainListControlBase + { + public EditFeedsList() + { + _txt_control_name = "txtFeedName"; + _lbl_control_name = "lblFeedName"; + _delete_control_name = "cmdDeleteFeed"; + } + + + protected override Button AddButton + { + get { return btnAddFeed; } + } + + + protected override GridView Grid + { + get { return gvFeeds; } + } + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx.designer.cs new file mode 100644 index 00000000..53c27515 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/EditFeedsList.ascx.designer.cs @@ -0,0 +1,62 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace WebsitePanel.Portal.UserControls { + + + public partial class EditFeedsList { + + /// + /// btnAddFeed control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnAddFeed; + + /// + /// gvFeeds control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.GridView gvFeeds; + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx index e39fb7a4..5de7bc20 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx @@ -1,15 +1,117 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebApplicationGallery.ascx.cs" Inherits="WebsitePanel.Portal.WebApplicationGallery" %> <%@ Register Src="UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="uc1" %> <%@ Import Namespace="WebsitePanel.Portal" %> + + + + + +
- - + + + + + +
+ + + + + +
+ + +
+<%-- + --%> + @@ -20,7 +122,7 @@
- @@ -31,7 +133,7 @@
- <%# Eval("Title")%> diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx.cs index 293000e7..08978785 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx.cs @@ -47,15 +47,19 @@ namespace WebsitePanel.Portal // if (!result.IsSuccess) { - ddlCategory.Visible = false; + rbsCategory.Visible = false; messageBox.ShowMessage(result, "WAG_NOT_AVAILABLE", "ModuleWAG"); return; } if (!IsPostBack) { + // + SetLanguage(); + BindLanguages(); BindCategories(); BindApplications(); + ViewState["IsSearchResults"] = false; } } catch(Exception ex) @@ -67,43 +71,69 @@ namespace WebsitePanel.Portal protected void gvApplications_PageIndexChanging(object sender, GridViewPageEventArgs e) { gvApplications.PageIndex = e.NewPageIndex; - // - BindApplications(); + if ((bool)ViewState["IsSearchResults"] == false) + { + // categorized app list + BindApplications(); + if (null != rbsCategory.SelectedItem) + { + rbsCategory.SelectedItem.Attributes["class"] = "selected"; + } + } + else + { + // search result app list + SearchButton_Click(sender, null); + } } + private void BindLanguages() + { + GalleryLanguagesResult result = ES.Services.WebApplicationGallery.GetGalleryLanguages(PanelSecurity.PackageId); + dropDownLanguages.DataSource = result.Value; + //dropDownLanguages.SelectedIndex = 0; + dropDownLanguages.SelectedValue = (string)Session["WebApplicationGaleryLanguage"]; + dropDownLanguages.DataTextField = "Value"; + dropDownLanguages.DataValueField = "Name"; + dropDownLanguages.DataBind(); + + } + private void BindCategories() { GalleryCategoriesResult result = ES.Services.WebApplicationGallery.GetGalleryCategories(PanelSecurity.PackageId); // - ddlCategory.DataSource = result.Value; - ddlCategory.DataTextField = "Name"; - ddlCategory.DataValueField = "Id"; - ddlCategory.DataBind(); + rbsCategory.DataSource = result.Value; + rbsCategory.DataTextField = "Name"; + rbsCategory.DataValueField = "Id"; + rbsCategory.DataBind(); // add empty - ddlCategory.Items.Insert(0, new ListItem(GetLocalizedString("SelectCategory.Text"), "")); + ListItem listItem = new ListItem("All", ""); + listItem.Attributes["class"] = "selected"; + rbsCategory.Items.Insert(0, listItem); } private void BindApplications() { - WebAppGalleryHelpers helper = new WebAppGalleryHelpers(); + ViewState["IsSearchResults"] = false; + WebAppGalleryHelpers helper = new WebAppGalleryHelpers(); // - GalleryApplicationsResult result = helper.GetGalleryApplications(ddlCategory.SelectedValue, PanelSecurity.PackageId); + GalleryApplicationsResult result = helper.GetGalleryApplications(rbsCategory.SelectedValue, PanelSecurity.PackageId); // gvApplications.DataSource = result.Value; gvApplications.DataBind(); } - protected void ddlCategory_SelectedIndexChanged(object sender, EventArgs e) + protected void CategorySelectedIndexChanged(object sender, EventArgs e) { - gvApplications.PageIndex = 0; - // - BindApplications(); - } + ViewState["IsSearchResults"] = false; + searchBox.Text = ""; + gvApplications.PageIndex = 0; + rbsCategory.SelectedItem.Attributes["class"] = "selected"; - protected void odsApplications_Selected(object sender, ObjectDataSourceStatusEventArgs e) - { - } + BindApplications(); + } protected void gvApplications_RowCommand(object sender, GridViewCommandEventArgs e) { @@ -111,5 +141,42 @@ namespace WebsitePanel.Portal Response.Redirect(EditUrl("ApplicationID", e.CommandArgument.ToString(), "edit", "SpaceID=" + PanelSecurity.PackageId.ToString())); } + + protected void SearchButton_Click(object sender, System.Web.UI.ImageClickEventArgs e) + { + if ((bool)ViewState["IsSearchResults"] == false) + { + gvApplications.PageIndex = 0; + } + ViewState["IsSearchResults"] = true; + + WebAppGalleryHelpers helper = new WebAppGalleryHelpers(); + GalleryApplicationsResult result = helper.GetGalleryApplicationsFiltered(searchBox.Text, PanelSecurity.PackageId); + + gvApplications.DataSource = result.Value ; + gvApplications.DataBind(); + } + + protected void dropDownLanguages_SelectedIndexChanged(object sender, EventArgs e) + { + Session["WebApplicationGaleryLanguage"] = dropDownLanguages.SelectedValue; + + SetLanguage(); + + BindLanguages(); + BindCategories(); + BindApplications(); + + } + + private void SetLanguage() + { + string lang = (string)Session["WebApplicationGaleryLanguage"]; + if (string.IsNullOrEmpty(lang)) + { + lang = "en"; + } + ES.Services.WebApplicationGallery.SetResourceLanguage(PanelSecurity.PackageId, lang); + } } } \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx.designer.cs index 6d7c9fb0..83f5ec39 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx.designer.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGallery.ascx.designer.cs @@ -1,4 +1,33 @@ -//------------------------------------------------------------------------------ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +//------------------------------------------------------------------------------ // // This code was generated by a tool. // @@ -13,13 +42,40 @@ namespace WebsitePanel.Portal { public partial class WebApplicationGallery { /// - /// ddlCategory control. + /// rbsCategory control. /// /// /// Auto-generated field. /// To modify move field declaration from designer file to code-behind file. /// - protected global::System.Web.UI.WebControls.DropDownList ddlCategory; + protected global::System.Web.UI.WebControls.RadioButtonList rbsCategory; + + /// + /// searchBox control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox searchBox; + + /// + /// ProductSearchGo control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.ImageButton ProductSearchGo; + + /// + /// dropDownLanguages control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.DropDownList dropDownLanguages; /// /// messageBox control. diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryHeader.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryHeader.ascx.cs index dcf2e312..ccf5e1c6 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryHeader.ascx.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryHeader.ascx.cs @@ -27,7 +27,8 @@ // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. using System; -using WebsitePanel.Providers.WebAppGallery; +using System.Globalization; +using WebsitePanel.Providers.WebAppGallery; using WebsitePanel.Providers.ResultObjects; namespace WebsitePanel.Portal @@ -39,7 +40,7 @@ namespace WebsitePanel.Portal lblVersion.Text = application.Version; lblDescription.Text = application.Description; lblTitle.Text = application.Title; - lblSize.Text = application.Size; + lblSize.Text = application.InstallerFileSize.ToString(CultureInfo.InvariantCulture); imgLogo.ImageUrl = "~/DesktopModules/WebsitePanel/resizeimage.ashx?url=" + Server.UrlEncode(application.IconUrl) + "&width=200&height=200"; diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryParams.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryParams.ascx index 1542ca40..c95212b2 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryParams.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryParams.ascx @@ -63,10 +63,10 @@ <%-- database engine --%>
- +
- +
+ + + + +
parameters = GetParameters(); + string language = (string)Session["WebApplicationGaleryLanguage"]; // install application - ResultObject res = ES.Services.WebApplicationGallery.Install(PanelSecurity.PackageId, + StringResultObject res = ES.Services.WebApplicationGallery.Install(PanelSecurity.PackageId, PanelRequest.ApplicationID, ddlWebSite.SelectedItem.Text, directoryName.Text.Trim(), - parameters.ToArray()); + parameters.ToArray(), + language + ); + + InstallLogPanel.Visible = true; + InstallLog.InnerText = res.Value; // show message box with results - messageBox.ShowMessage(res, "WEB_APPLICATION_GALLERY_INSTALLED", "WebAppGallery"); + if (res.IsSuccess) + { + messageBox.ShowMessage(res, "WEB_APPLICATION_GALLERY_INSTALLED", "WebAppGallery"); + } + else + { + messageBox.ShowMessage(res, null, null); + } // toggle controls if there are no errors if (res.ErrorCodes.Count == 0) diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryParams.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryParams.ascx.designer.cs index 8a20e774..91c497d6 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryParams.ascx.designer.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebApplicationGalleryParams.ascx.designer.cs @@ -1,4 +1,33 @@ -//------------------------------------------------------------------------------ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +//------------------------------------------------------------------------------ // // This code was generated by a tool. // @@ -175,22 +204,22 @@ namespace WebsitePanel.Portal { protected global::System.Web.UI.HtmlControls.HtmlGenericControl databaseEngineBlock; /// - /// locDatabaseGroup control. + /// locDatabaseType control. /// /// /// Auto-generated field. /// To modify move field declaration from designer file to code-behind file. /// - protected global::System.Web.UI.WebControls.Localize locDatabaseGroup; + protected global::System.Web.UI.WebControls.Localize locDatabaseType; /// - /// locDatabaseGroupDescr control. + /// locDatabaseTypeDescr control. /// /// /// Auto-generated field. /// To modify move field declaration from designer file to code-behind file. /// - protected global::System.Web.UI.WebControls.Localize locDatabaseGroupDescr; + protected global::System.Web.UI.WebControls.Localize locDatabaseTypeDescr; /// /// databaseEngines control. @@ -246,6 +275,24 @@ namespace WebsitePanel.Portal { /// protected global::System.Web.UI.WebControls.Repeater repParams; + /// + /// InstallLogPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel InstallLogPanel; + + /// + /// InstallLog control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl InstallLog; + /// /// btnInstall control. /// diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj index b8d62b5d..9b102bd6 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj @@ -336,15 +336,32 @@ Lync_Settings.ascx + ASPXCodeBehind + + + ServersEditWebPlatformInstaller.ascx ASPXCodeBehind Lync_Settings.ascx + + + ServersEditWebPlatformInstaller.ascx NotifyOverusedDatabases.ascx ASPXCodeBehind + + ASPXCodeBehind + + + EditFeedsList.ascx + ASPXCodeBehind + + + EditFeedsList.ascx + MonitoringPage.aspx ASPXCodeBehind @@ -3759,6 +3776,7 @@ + @@ -3779,6 +3797,7 @@ + @@ -4893,6 +4912,9 @@ Designer + + Designer + diff --git a/WebsitePanel/build.xml b/WebsitePanel/build.xml index bf80d6dc..52edf879 100644 --- a/WebsitePanel/build.xml +++ b/WebsitePanel/build.xml @@ -1,5 +1,5 @@  - + 1.2.2.0 1.2.2.1 @@ -18,9 +18,9 @@ C:\Projects\WebsitePanel-1.2.1\$(BuildConfiguration) $(TrunkFolder)\Tools\Diff.exe - "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\sqlcmd.exe" -S (local)\SQLEXPRESS -E + "C:\Program Files\Microsoft SQL Server\110\Tools\Binn\sqlcmd.exe" -S (local)\SQLEXPRESS -E - "C:\Program Files\IIS\Microsoft Web Deploy V2\msdeploy.exe" + "C:\Program Files (x86)\IIS\Microsoft Web Deploy V2\msdeploy.exe" WebsitePanel_build server=(local)\SQLEXPRESS;database=$(DataBaseName);Integrated Security=true;

8L8;*b<}O7xzgmXxqABdl*0p} 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%0D{>KL!jyh)tZS9mD6y9 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%0DZrsvkR4xT^Z8h7L7!vZ2cj-EZhMLvI`U z+|WM_xncet8AD};=$;hHRaJetp`8qMF_bgZ$Iw7SLk&$dG}F*3Lzfu3#n97+HW^9| z_qpm|Xdgoh4XrkGwV|60J#XkcL%$npH^RT8hoJ$6#u%DoXr-ZZ3|(dDAw%yN+H9zJ zU;no44RtfLtD(V$stiprbcmsPL#G?M(9qR}Za4IRp{EQ*ZT^aJZyEZ?(C3DJFoYwe z+H*<_ZD%OzB|90ni=n}Wh8db@=nz9o3>{i?j>1T#E8}g%~ znJXHJJ!jbItLjrgGE%aJniy)MC?2DeJ?(91FGHgYO))gz&`LvV3|(R9enZb0`q0pi zhBBjkp0_pB-OvO>^9`M7=n_M>8+ybL-HIl)@rEI~`$M?T4Sj3qM?KqUFA>c2D;j`3VaAesZJ>MIN# zU}&D96+n{8nLtuQ=K-~bZKJCGGDFuJy4}$IhBg>_4Mu0FKo{m@4%*_Oc1SDhd zdmzbkVw^`MhPE|SZm5ePIv+1_dm1;=&;mopD;igSmT~J0-C*d8AwIpwjoWDG9YbFk z`qfZoypP-5P&-3i4ee@ZsG-S*<{4UP=tM)674nW|?mXqnTN{QQ$UAcJ6Y73*7TSl$XH0 z4s;E39|BP-fs1k<9_ZY4%ryhLnNeRL@;wgR5JhEfG7xF1Wp06?Rff(qbdjN3fJkzc zx%(B3t6xnNkVd zp;Mi^htZ#asIJDw?_d@0a)Lz3si=fE?Exf6koW^_K# zpBSwNl5m-M9&KxA2Sc3=^)j>*@(9qmNe9DIzdIV?z$GCaEfBG`e z|1kGH&=-upHuMY7ci_rgW&w7W_~|;JPCHT#u2)p%?gHAGxqkvl$#V-a<1jZ6Xa=KE zKveRo`uhyMV(6cSN*DQXT@6hzRA=aHMS)-J%(25R}zfXZyG5QhcBu2@_II9HI z(j5=<5Oa3}Nqan{Tr>BcqB8gFq0YUCaAoc-Ac|4uHXCZZMB; zpv{a90{R!D(xqs@j+E0@KvKJ%fCex(0B8`_lii&?rWa8~UrE zzZ*K_a7nq$9S*dVW1IuD5-2WNF9CNvxQX?*8hYH&3x?h_^r@lEhJqD7m6nF+{zXZ7 zkfOkS3?w!F9ng<>Z{U6h`h`(;CI0S2Hh>mDG^SIo4UpIhIs#GLleFZM%u36>Fc9)?ifbQvxr=_n0Nhv?`PuZSBsZ6Z@JGlEPT#QQ` z?c6KiCe}AH)ZEZchW0QtTv0rgk>K9uR3}2S{{=FMvck{sz>e8$I3mME|rO&;sTL0nyVkS96k2 zWf{<;{B#wNq<6BR^MOb+58Ty;?gx?_yacp?A4ThdF^tPd|4E?SMcg(N$ zV`~|ZNP&7orx;pm;m$R5p`ptSU1#VXLmLc{Y@%|c+(vMXx)b`q(APkcgP(v%Z%Vnu z=^kxkXnPv!U>wl=pJyQ0XzjHJ&gMOG5mDM8b1p?3?$)7&y?|oaSrr3 zzxOC0=@I7`y2a3wKtCc}JkOt=jhpy#RLWl!#h*4i2j?8|R5+SHCf4r=j#8Oezo#O3 zO0&Vl`ibBcaeB3i;&D#|w}PLpHFUY5TNK4}@F2L=9OHRIZzzg~%Pe&6A`bT{o)U_` zm(~WC@l$uMN2P{Z8tP)Gub~Pd_9yaufp-&8bZzw#^=d{ca ztd7u2ZMBdQnT;&s&+lgH#o*=hAuXAqoD^B z#otE#?+1?i5}peB!cgLT;o>oN0+;Mby=j1Bp+*<@ zx3x3W$IviCGYqX%lyc_+iB@%`q1%B*A@?cw1kiX!uNwNu&}JZsTXdmEe;i{Qgp>6A zJ6gIn;6%cC?!S5Oj+ROfk4kq3A~}>Q9paIrFRVzOCxVl_%rvybP(6@@JIl~ILpK<@ z&(PC`UI&`Qwe|s!lyv66SUf5TxRHgASuVghMobEx4mTOEkjX_e*#WY{@zfO zmp`t9#6|wS4b?#jo=Pb@TDYAJH58*So=VFM1dk`UgBrJ)j<7w(bId^;cEhno(7^miM6DmzXOr=qp#chGDpY55#wqgnL}>?qOw6h z1rn`qzsp5a2;5{K;pP~M;zqezgs0SQfm>ndI76oyy2#L#hVC}>grc~tBbnV1dB&=v z)+3VH!qFTch~@=BA0ib(@l-wo*OgQG(NOUf!o_RjOmI>!7XnF%ZULh70`~wAwJI#G z_VhJFp978LaNh&b{1Ld~D}4;V@()~da3cRE0Lh4&0#ul1`bNZb&NJOqPiS2I5+KS! zGk51zlGA4HNki`#`d(3)yWncCd*5K_PuJjMVMwpcT>?aFgJ$k0AS!t?SGHbInVSJ5 zt$(9(fx8b#>fi-M2{+?fbgMp8-uXb3O6U^T`S;#?J63`pv}2avoi>T3_(1j)*AHvmmy^fw^tbz_cV=$)xoQP;e?N-bRk^DAOOc-RmlKtnSbw#}c*4THY-p3A z;0~XI)`kWesy4LP&>4nqH}t%r4-NfpsKcH99m5RGGjy7wz&!#)EnQ`H(W?4qEZjSW zzEjl9W$*GOZwVxEJ1Q5|OT4anSq$HnRrRMC7qwf|s&nu5Em&vhWJ4DMQJY6KUgl1` z2R4dbsb@b1M0Ub5_YXrI@AcfZKr#aE0iqEQK)wZGrjUmrvJ0#UfYkvx!o^$@sIn0prJ3`XBt47#TH zR^~o_%*Xhrp|Zz47g>5E>u-BJmE89;6xoYMTih8ylLt_)4hK4j(Q2Ssj4lJ3$LMyT zIz}%59mVKGTYY#sSw{Cv=jG@>=S|G_wRL@b}M^B@c zIp`&PTaZ&(4fGPD3xK4ry$SRSxWZmc;o#$?F|ZOgw9U(s%EbEZ4bgf_QhxJQ=MEV} zdHxDW-tjY#b(9RBDYo+0dmx(nhx%_auOG(}jG`VEjnIq#>QlMFknfY@>N~t4Ppj%PfAeU2Lpejk6_vU3-|~|1YD4z}(a0-v zF9S(Vr@!sryVTGLK=SllLw(-CIIp0Vj^^{h;QquM&77w(8Us#tK~Dv`jk(+ZKi1AY zK&R^a|NEThTpoqoBg)7nA(tX5id;e}!nn&lm1`*~)iaGIw=!ciO(8@G=_XMsG)*c> zh1{bg$v?rN>hzR!s7CS0w~cKe}Z zcQr|kGb~CiQl=b^qPJC&Zgh3!_l8ARzW|f6?Szu{-3KMBuju{O-(Zhcq}npPY{r_WER5e0slB?)BrIlsTo7Ot}l*(^T?RGtslr3tR zp8J*hp05sulBX=o|QS)A?6qMwp29(_Cu7#4^H@9lZF?02OC|Nsx zWz~;RHCs|%euZkls_oAvN|fh5V3OJ}tIXIhswRL9hi{~!Ufj+;AGJ#?)V}Q!?^*SY zjTfc1`WKVh8m+K?hN2yy)Wklm998bPv8$<7)T$j4H)z%&akEvOt?F;py;`+PB(zGN zk<2JNSI>!3i#(!|JF3yI=sB&ac5jEGmWe!4?MRM%@z+#gC$sH%D7s%p@sgjY?*2_m z-ahe|RXJKEpGT^F(yVtMhN^!v!|!}O~%R@Jepl~&2KcOS5i5hXP-*s6!Ddeo{hR%L00RlOaJ(fEyKsc8JZ z0uRaGQ79Qbr>vUsr(p}A=-jcR-h+x^ee0;tpbD{~(IZi4yj{p_leOCeC6P~96_q@y z7gGn=2eCPb|7CoOYE@L-{5PHvkp|xXLS4(LErya2`mR-xzwaKboR{drb{VTj!x;twuJPRm<(tlJjtnp-#o@Cg9?<|bbQ_~r_A1hlK!&Vs>qk_muVcu+yfjH?R?VJ<$QH& z9B*$MP~>G$xRAKV|^V49xxc*** zx|>zBmrP343$3bVRU@lzf});NRDE!vql&lX=WZy9QdIp2MXTnb z>XcO_N*h+os-{+TgQ9N)a1IYj=9js%O#Y(1_2@}1I=$Gr4C(;BC?V9HtR8?G#3}R8pps%}~(=Y`HzP@SeG+N1tN4TGJi7MeNg8vKDp`hq~tno7x=g2^3% z?hDci(JUH0_jHDxT&4ECnWGE0OAPRO)kW*3BQjBV1 zRXeS4-+IBEfL#wJd5O}XzV-v>>ReZ&eoCkKA8Jo^Kzreou7h94HSx?Df1GE%)Xev- zps2NySJKgraA#a?-+@NOXsr+nO7i!uRY$G*+p6f^)3KuIiM^qyPLu13`r34)k(wBS ztD+vT>M^V6H)7>#re%w)`oOBSTD41j3ne3}bY;_SmsnNNDyl1r?5L~2Z`PBJ`U`fFZsjVX zl2fCxFq>1m3Rgv4Z&h2Xx@#rQk$}wrZ{g&HMeT;2 zsNbzBTHUZpTH%QRica0*yaiM%P9u6=jow>DC0_=+QEc}K)KjdehUD2`6WC;Ck;k`S ztC*dD`i#}N?0VHOGstkO##=SVs`st>6iQm=YbcsGimIJjCAai#S709MLZyuMMZ1H^ zJ?b8-qFE&qOd?OSYCe?AO-rp>ZLj_SHI>si3iT3HQ5CQ0sIQong`%&yu-3!ODtFju zmal-Ta_77ZN^*7Du1l^26OSm0xf`I(aMzH#P;@m)BVyfbl)g5N@1eSPrCdcbYt(L0 zT}4-;v2X;wC;54>P%TG2iYUo_l4e$7sfn30uxrn0G=ZJeX;iyr^?>v8`f9tx5Uq-; zSZ!0|C84hFc4ithqc;YV^EskueI<(4T%;T|6uzP!hLZcyL@2piMZInYnACmrd`UGV zZ@JgtY9@LZ=16Pz6O@!F8Z%ed!M-o2+Z3uVtFBjJjey)bDtc0i)>2VFh}!L3&!)W* zr5s0j5UL7Pa*b~UyAdokvCXRQtU92ToNIoDqg+wfly|#TN31#xC3!Ab&)AiKdY65p z-Sem?RLr%dwCZ}R=>98qH(7R@ zRdm;ttMo0hsIK?Me_dcW_VB=wNI2DCU?5_ ziG7x-`sQjet1gF<)!~f|uePne=p^=*GfFxNukp3pxQWB z$)nSJx4^D<9U1}Ai7h&JBj3*L##LD}oUkgq&ajKLirx&gOEd?g^0rHK& zWl_KX0qj$@`x$BjtAf`XRUT?5v*`RwGcb9(c`Fp9fp3VQs8#WH#HME6o#0+%R~{x_ zQT4L+h|2MwRZ(>i9`rmD^(H*Y-Qei&V$6L%ijq7>n0Hk8eG7OdZcbwaTyN^p2U4@YNRL ziJj91IX&atLvpPZ!__g!X=m-8jBVzfU7-0iIz+RkT-QSoa94 zY1s`{wYRFTRYR=mjy4zH`!#davrw{rHf3vLUm=f3W~~xcOp;^oW;zzETxLo#C;l9liQr`-STeM*g2|mTa!jVsH^X!$Y!3z zs>5D=8cOoK5UMfTy>HnXZPz|=MLV%;pSVq{sFy@4xn<}y-+PFcnz#=hq8_v=VbzmX zWonfig`N^tbCg_M6*beUMOM9O)q7UuTlJMyJFGfv)oHDwp6#e7ZpV8Zp1rfInhHhb zkdye77mSTg=KH~yaP=g!bx@ZKJhPutIjVxCCN|-!sBKnJT@k~q(q67cc{z7W-w8YE zIfJ33H@yp$$$9?Js?VVA8^_1myGIdbMs)|rjLv^9#okKIrdRTQ2R2D~$z6yO1EQcBWPRDz!)_{G? zYBQ9~0tYSo3rbEZn)@%l+a7IBXykM@d6^AW3GWG{4}Hz;wi-<8AbQ6V?aN1d3UubU zD}0kj3f*V!0F(QSsK>fsW;o04Nw9uw_l#E9h3IP9@^&bxtA0?Dt3g&h2qot%$6LE| z-D{`gs`SKHv~O}wgKmy`m~&9lstQ)s)GF%t$!A!u$5qNz`$T)Ip2w3CrPe;t4@}eu ztDdrUFKC6-Ps+KLmIQy<*jQ`f9Sr1z>&HuC!GtR$XotJu#CV zR+aCVZ>FMmxJ_V3-%&+((?~@#Yg8NZthRvTMf3ezh(f=e63z1eldt(Lq-YL9752m` zm!m|#PINvP)p!&S-$jFMfn8Bm1!@OWl)vQGY8AM;4+WvC`&D$VAbMKti>uOK42$aE z+$wrvnE~IQcqQ|OR>^Hdb^r1p%6%TLiu&5B-Bum5Di#+z?6z8Ea)q-Nn8Rd8sUNON zo`+f${r<*(x+?jjFZxmwls}p~QxlUBMbs>-Ua=~%)7X7r*;=c1SaravlUC8MI!ffQ zfJvj2R>^fm_b8f+<$a?lddnz^-sg$B9KNEivFcW_~Js!>)wVO6eGrN7l-wbrvPC6ofUDAnqOV9g zfl;oaXFB8njGps~s&uQSLecLxMdR|^V{jAfWX3#ZRji<}c8TIzVI2S^PaX52c607O zfcgpQ++)z}=Op(b`r@#{5Xu#Og(xZ-tECFLe1A(#)PbU0RZ!+$o1FVT`fB^c!&((p z3$=>M+b*%$Uj0cc?DkwBk#Sbss!mo7gp!t?VA*u5qEi;HgKfEwddXU-ovh4CCQ#QG zku(Ce?_=3>3sfu3FmDt!XarcJLAtS`^+tbIv>Fi=twzimq^SBCQHH|~f8M2-M2`AZyF>{vO84xYr=K`- z4Sf}>9qcU1eg7J;qkQ%MX6K3G$x$0EP)Qg#cqt=g< zqoVznXa@f0vwcx@8u4Vmq~3)x@=_D+tQu(51gjQVwbrTwQ1Y7`erco1TUE=dmR8*X zMdLg*@qkwHO|b03J_9CdCX_sNMDt6u_WrYstJlEMeZRm(#-of?(J7khV3bowHLxm5 zqq$|Bt?%7d4Tqxshc_m6^&ibrQC=P`>+1c^C|A)berlQa4^WgzuUtrkRMJOE9}uV=P!*mewIAx=%h3UU>x53w1?oO1 z$$dIhBlt>d$vc85R}~tX`nv*3JQ`Wn3W|OiFHjw!q?Em(C|;lj+p7=itCGfrS!cFo zw>GAfLvAtZ5v!hu+Qjv@2&x=>1NANx{Z34vKC^Z^tvUo%fzvowJ)bMJ`))PqW{tE}Ayt)xWDvd=6Ljji{<@OxG5W$r}JvFb7?`E`VAiLo8^`_&wU@_cr@ zNtH~leujtS?=KtW{0=7G^h-@SE(VjHbIu&#D$VGDs%2F}DETdr7FKnHqWK|oR5Hrfb zxvr-D$E)-IFdntTpQ(tR09(tQg`(p?Gl-=w>#iz(3ocu0RP+{0C6W>Y!-1QS(Y zu(?_u>Jq+M14?qx2ugC$8tO7!l~(=t@}{FECGuK$h}sGz{r;p?g@>3l%3IYCN^;u6 zs^M0Rg_68H110%eU>VJmR73w${{Gw6Up3UE@fDP$`z@5T!cS2D-U`L;bNTFBpvqfS z2a0|tAyCb&>S?bIfszu@Z1#XH2h~RM=y@J?QbP-@x(RCwVINrb6_ngVcUrdJvg1(E zosNE=B{_|Yus)D@x%V5@-?G`3)fr)~zGc};C_a0s)=(;u9=e~?rO`vZ zBsm9km44SCP%n=(eTddqJFUmr^+F!>>k@(LISMPN1*FL1GAQX0|L$=KJm|Lx0yW;M z=WP^PgG5o}J>8k}DgEX}p!PiI@>@JfcaTkYJ*zW4Hgf)Md>HAnqMUBE9_N~se|VkJ zxFgLx5&YZiUG5FCyAyUtZY1>pl&mctg_1h>H{a3hYtjhRx9~_~b{I;YUH;8C7j{z5 z=gNKaH~+ibcVoMnkDIkwBPi*KG%943M)Pjech8mDU__C;$Qj6}?ypWa@u?&^jl4` zGEYa8e{b_;oJLQ0(AQm9(L%k)jA}gJ`c7X;QKGUvHP%%xf(2@ZRZF3yp4UOqZ$t&^ zdnlJf5o?p)>lZ`)}5c+*BdTJ;;0tlZ)gOdHWm)Bc_RRPvwj-YZZ&CYtA-Xk|1A zjQS9M@y=e&v}%UEN^{OpjzZ5pqG2|7M(%obue{0pxP_$ub9}HMZ(jC@E22t43Kx&qtE`r@%x#r`7*dj&r5<7JUC-bNbDH>09Dy zQ-2p*RUJyk{<&)CzwKdnA&QL95l}K8Q0+dj;y<-2{i+4-gW6YWtyKP*V}_#8*OY#DV%P+tCo5_UnZQD*!Gigprc-y%@72M~?ve~OCHK5#P|`cs zLP@$iq3B!MK>Z9QGqv}eu`3NFcC;HHJ+?a7E>5F9l&~q!n=}?$m8X@o5w&#kymoAw z%Wu=bUv#$8uu$ngmZG^WqfqEN??4$)xY$io@^%s;xIlErEq?p`~n`zW8tTLW# zLcWv1M0xnDjj|q}4JK--^;lyW&D2pV$Ot$y&vdR7Ypz+Q{_cgkdONXbu6xQ}rS_Hj zqxKbL<~k|Szo)SZQDk2rde+?nCL`(~RPQ>J?rF<{7hOgBC4njdCA&S9pkxP#+LCq+ z0!2?Y?U3hx&%tv$$?gz*f8w{1|C?E$#%z=4>!6}pAottP!Fe>KC|*rxV1Jozx$p{_{@ixq9bTj`BNvqdU{t zYnr*$UH*$Efhs%KD4MzGG+&@-<`Pu{SLr(f%)n3-B~Wdxq7un0O0&S7Kbn%CJqtv3 z55QN?X7^zZvmWOv#|`^TymMWpGib8gO(&D^mTaD@1|1;P4vIzv{uZZIBcNnl(l{T^ zb~MhTzR~k2rFQ0ALg#J*^})-S^>9`0LVelpT;q*ONhc)&_3;AJOSV8sx_d4A&9ZQz zS^E@+qO%aPj+GupD=oQe{M&Q#x#}hRMvAiN6*G&jvWn(Exk~e&sO`8ais~inxXA&j zbB`G+<@6I|S7Wg$TeP0M&a&24Q5uv}xra*GsP3g~XRasZs@V+)6zww6to%RaWw=f4 zA*;qhNg7iun{Cw+sAzngt0qVPYSJx!>Ysgs-hxWspsUh1O0ymHjeqy(@rGQLmX18m zm4kGS{GVreY7d!#|F`qT_CKi{bKb=JcvexXE(4RdJkg!=Q!we-JFKEs{fT|4Rq1JL zJ;tHJkM&P#rc{F0AEPP=nFlfs#H0UJ36+!b1xPMPXvt=f7eNYI@*T(mkPB4fO9^I_ zF5g0_Eg(fy8z%Xx1;}oYVk)H~*<_W@LR;-BgYOSivwx6L{~%*4o$WP+NsgLBy_n+^ z!Fv)a*J6Kbkw8~h@{n9lUqSfa480B(gWlVCJ!;m ziVp&DFT!7(Q)xnM&%8usGLimFed7|CWkC6VFQ2%Mj`MFmU>OVs0i+{=?^`9neGf@-jKSG|=%1^rb6r?D~4fMbGm*=ksDF@P+ z|DVVkX{k19(goy3*tAyPX);KYo7E8}S?V$E)kYP@Qzu2v2BEZWRaa~B zk|wvQyER#^K^>iq~X`4Z$Kkh@fZ zy`nY15VfC4x}7(043fRFd!2{pwVm)9qJCqWJXH#WYGbGh>ycG{ypkognPjPkAm77l zs2af}nm6uMxtgTH<{)hDS1UCc3~~Zwl!{+Xk+alfkPFJ;_iySP2IpGN8JH0BI&B7CU=4K z1bISrNg@M4o>cc}GD6#oSEG{%*-TVVYm%mICaD=oglw|Z5=|zdy<+C??UGWT9HmBu#w=udVP} zh#z+(uQat4WH-nnHA<78LH2s-+}oVWQl6TBwt+!LSuP}YN5%+ zn!KetXi^^pi(a)ZfQnQ&vwXseu{0CW*M6QR|I+Z6R{wm@$1^Ha9WfG0b&nYw9H&(&sX13YF zHc<<%R|lEosGyfpZDF%s^}C+@qBvjE|8g9%=>nUt)jYO|;%rr~GRaYQ*+oRTlE1M2J)>st;ypcBbW?ptne>eJrD8_ zlUG+ewOo@;maNz0pd~*t$%$9*ZM=?YQs0t4 zG-+x{;Tw^-%8K7^Ni!xn>PwI*$l(tvGl@(G`B81xWEX7agX~x3no^t`bqM5DkOQih zCQcvB>L3TzSWPYjSp{-Pt)fkYCkUO}c{6%HgD1!z8+coKhQ@L?h*ts@j|)XT&GKi&n6|tJ*@;RFFRr z`FAy;1=*yjmq5Hr@U4ehtjRJEy2t&cKGNiUkn>>km)gKY(z*cTZ?#W|YTp;X)(4`T zUxmcGgQS2sPV6R1D?`z*<6X|Am?n3@hKTD_&}6ud6LV?_iH`!IQg}{7Av_;8ftTl` zo@L`ZeKna5uQsspoe@H8>VY#|lew^=l7`L#O-$;cvrLmku(=&^;?7!4Oi2qk+nDTi zmcynqY|e8IG1={W4APs)N%7)5A7;|BrPRiRepvT{obS;8)9Q2v$SIJ5&IGpE>wE@+ z$2wKW$<xxyae5Nd-;HI-51A2XYl`$~oIKX#_&~x!BpMNfS-VJ9{*_8Kfa> zDmcYkQQ7x8ok1u+6`d4Ks2>WcrAZHKbEPKqyA;jXtDYw2DZ7%>j>)Rn53uP3n@UbM zO$rV$q(75r>{N0_2vLn;(+^&ioeb^O24oOO6=zbCS0gv6J?W*SIUXC0HY_-YVZ zOKh`?$r!Z<pIOeDL)YX6gKsoJR$KbL8$EYozt2$1)&veedp3!I8MBswV~e} z#@!^|)sj?gbEhSbYeHWq7e`w4o$;DvfRtgfRL7ZQ$u4a(*T!jsciNc!;vZR?QB1Pb zE|BsZXAhGp{N-|0kOs~nCQ^q~W7j$-wb${xu*!u^LuWfbf@P?}cVi8Ol3wqWYloyT z`&9s;*`~2G@pd6sS<;dp!Q?4`yc#<_g~Xe~hU)M}XMiTDmJAWXGh17vexq}|14T}c z&xB1Ukfu)2j!YEIY-H2asmUZQ{wi#GgEVtmF_ChSO*7l;=r>6xfHZe{u}zLT4l)^} zg)>@{;2t5ZoLo&xgG`4_8)q4lEOjNwB9L~@aVBZ;#vsc;+B+pu75>TE=0he8g{a$M z^C?IN=SfX^g3xNPlk!`D)tE%}Gt6nmBwxLcv?$InC!q=Lbk#zBhC36P zWbocsJ&=2ylSww@HNsiagVM@SA0kde*xc_7>O~|??E+~E@_^H(H<9%CK@gg0M>-vt zL^U?j8I(jQ@<`|5B+{k=o^zdCA&PzWCh|DeHoQAmD;YxfpNCnu8b6RWiB}fe>bgw0w??9-e5S0iT1)7+ zBPjKoK-$48(^-Z&g-AD$PE0lnQ3F9}EN413Fg__QYA+fWlbwM=;*Y?lH@qf0qqNN= z5Nh|y&ORnNDhFf$Y_gqR=r^2oi%A~ z$r2`6@jF32K@M}Bo!Tbd+8orxyt~PD>f#zjHt%k7oe@m3)GX^YUz0a23GXGZ`w<*08odETk2$xk3#k>{ySk^9A_46f`3nda1G5~cNm z)0m0e8UKRK3r?z#_z-x-D=9V8>8VKuNMR-endGQ0eIDF_51@c34sXwM%<( zKRP|R#&Y5}Q+-!PT|50X=>l>dlR=scv*bQa5|%uq$upLu2~mqcN^qQB4^e)y)F&Y2 zm~y@rWF7IzJ{}SAbBQpPX`!3%Ln|^8AxiSBUKiKRJnX zv1tpNT5K~%lgB`=0XgKXVUnXdk5cL$kRwj!81}Mpjyda@M7vMNoXt$KRi_7)S_!XX z&fX;QDabF*aZMhE%?6MY+!nO^^d!i3kl!rH0r?T+cT47g90U2olD9zU%)npH?;JT= zxBTstc!Khbl>=;OEGsu#ldmmV&Ln!eQSQe~qH-yBJrkL2Xx~q{yO>0~bB=rZEHB6P zGbr`Q%W+FG$&Qah`xmH!Fz%&HqByQwo5@~>c6&;)O$R1f>P>i+1Btm03$bkxb15Yn zr}?nCjBUoUO^(_QQU@e-=V-DY;OL$s{X20wf(arQF5i z$SZ2WQtnD7yPajQp%%Q5OG<0(9U!yeb)nl~JbC4)gCO&nB$&vWmex^a+}ab!MhMNl zW!=V1_Btj`IXA&1LxmV;6uF$cQb@cc$Qw+&i4-RzUI~Qm@8#TrLU>g`X_a#?OCprk zC2lhQdJ0%n3B9O~0 znGI46q=q|_Bj>0UAoM1*wwtHPIwG*CWRTlL z+sx2jL)_L$guI5j?X?%#kk>G`zqWZ*d)?~}Nh0KRpF2`}kqvo`aK~wz_q5jo?&Ksw zUL)P9+KX(+Yn1znwpj;q6UamEDk1S7Kxoc<*!^6S-z?cCapDEiAnoNq2)L zn=~2c7R(i|Qy>q)W`es=lQNHE1_pV`UB)C!)d86R^0eFeIr7R;<}Acyw-=Lal?R*q zFGqRYVVZmk@)*doZh}dc`U7Mf$W*uX^OAZItY2tOnBnGXlA_5>_qZmtHJRnMohn{U zL9!9&MfYVU(Hh_-cZs&S4L0;%<|X&SY2x)b$PReTcdKYJU6TcF15K8K(70ISKFlOb zZPYf4+=<#|KgbV=v)COwog!zczd(KhdDR{Df)Hx26CiK8)0kwd@>umy>Pua+pn0`E z$X_7KEV&KjylVK}9ZLp+6a!i9p5{2RN};noAGyP3P^9#D25ic}=3_TyCKELcjrl^V9<_otVlQC*G2<3UbJ57^SAgvJjE4Scm@*1PQ1ZfMh(e0&)DaB@Y zjwZC4qaD1h?r}|i)?Pc@VRIx-n1Njg#M$MRcu5GY=6Zwdc5{W;{h#mMnM|_OZLpz{ z`@MTK$!0jbzISWPqd3t%GnaCtZT?aCaZ8mGtT9cpLs*A`gS`i&|Co;)VJzz5%UI*QU znvB-ukh>&_EP~Bpx7;ffCr3@yHb>pMn!KUOF?SG?EcK-(Kf7x*`4xoTpZ?-bTugD& zREe<|Nr-&hUG*xHcvTQu>HX@iWs((d3_@f1SNDR~$R^sC_|+}TL`Ks##QD{&BP9Om zIEi!8y+)JGAm790B##SP)0P>Jl$kVP8(BwDZ~4P*%Ve)(Y)-r1=r|SNMSbIMcNdfB zt-Xrv(_U$?ajGM;u_CWio}(3-8!OEuOO1mKz1eqTZJA`NX&}^l-PkCxv3FrNHin7J zkRc+wu^MkstIH(nKj+8RYMXMfq1opASdk@?pNb$25a;|@OHG=Av;?^zwqBFl zKstgHi=AeYqk4n%0x1!rC<#1U6?qCfG$5rl$xf*R@&QOCYjY*YMvz*TP+C8LTy05H z*wC4Z>n!OAasoCH=?@arz$_U%_!gJl&MnPigO(DB%HAxtj!D#}&0-t>K@KvJo>>Nw zo5i}nO>wf-0j!8=6f}=bWRlKr?JL8kMeHaOiChijrkKBsyz=8QteUA!TgBpAt-NuHuNJ~VdP#|kc|az!QW5Ua#Qo|5PkQ)=u^A@(UL zHI~UFdP+)-nx0@k_{sg%n zq=z9kPESiroZgn0IDHMVar!ff70LJa-Yu;&z}j4#DSPGvVk>niOr8hEymzR^_Btl5 zyJN*PF=^cst01I+$@Ab?ZEa)H8XW7VZA@B&W6x?E^FD4!>>VZ<_zeNMHw}q>%p@&d zA2}RT4Np_CFT}=mIWCfo3n}{M{~>g*jOe}TH|9&nB=G$@S>Sye5}oC^2$+7 zKxiF4AvR5uHri%lY?mgTHF+vl??dr2r>38dHP)oRw#kgWtBE;%ofTWJ$#9+4W7J!$2vl+hq3 zK+e}BCuKUwUm%6O`gvrPt>%MxHSuMc*FlqaKnj5r_1@6rBajjx#k>`oYyl|?QrxTm zvBaTYMx!?fCB0@zgwF1k^4e;WG6l0Jyh?e^)`(X_5Ng3P-k!BWZULzUn~OYeoshdh zXf&1eDyqExLN0l1Op38JI+9 z9o5|%on}#5@VbjMOBt*3Xp*;8T7BLwU?_#}{Xku1_ zeY_(=)P1m_b!H#$qHj1d-`}YY`*;C2=ylN=Sp zE(^{4cX>lJq5KSn&E4K8P3Tku%`Jnx`I;1k*GSk5_BLx$3WR2oVP3f{lzNW3801md z4EL63QU@dh0Hi=C6Sp@R9S56Zu`x1~bUS&;8*)zOGNrb+Dc+zXB3DrF9 zn2qzsXmURyzmGWMy=9s_3Gxxh1n;CKbo%-WkV#&H?UWyRhNX7T^zIPC-vU!#&GIre zp%tT$eVV+6$mEsf)!xBz)VrEY_NHm_r6$>4e5cqP1=)nur+71&WGH_oW)hGbulcuP zL-X?Lm~=>2z-tlkE8X4zdq0-J8KAx))6M7BY!ut?AyI zOw#QbobJ7=Nyk}|!|7h0COtuDbid%O)#QE_h@2f+Iil6nwa{T=Z)6n z3V2Z~&-cb?at#QTYrglCCe1-=B8M+~&uG$>(qi(0CPP6e&kMY{noz9@S*(ef=NEX( zgm67yhd2woMSH0>vQ;|bGzD4Y-TNaEY4=VbuXsfcX`4BiK|x;iZfAnMN{~??Z+V%T z%mGP&yzR|AOkP=P8OT#0%e`JlBo4L3RFL<*qfDet>16dv?=+J%^$EOom%~1`SNAA+ z%D54q-*k}*HDvZH2KQA zl}VPG2SV>1zV=3Gn}T!Y8?jAZ%U>vRma1$?f(iCuL1+hWlQ$704x3bv50Rfu-h54l zTau@}#(;dnHl2@iWV`RT#e1Adj#>*FTIFu>CTg-9gud(C;-#FBlKS(|Iw0G;#!Rx} z#X=a^dI^@bca_-h?)ei^FelbV@^q&XF;fS_IULF^!){uq6}<)uw*A}XjJaC zA80 z2fRI+n35jw3ZCXXb7Xo8bHJ<0Bu%}DI8S5{-6y<#OtRHr5E_HOc{P*+qbxNEY$o)@ z_i1mRwpj|BuCV#b+u)E_w%P&G55)0jx)SGikYON!Upgi>1s6&VLw`GyEJbfxC_iz( zt|vClKq#&A`~;IMMdV?`Dd_KE5`9@#*kA8UTJ2#&r6}Sz3xxCmNrzW)e+`oyHB8%- z@+XF3lc6J*@egV;6=VXu%KBppu#KH1%KDj1q#u5mLN>1?kr&`q&R@wSPtgeq>Z_Od zN0~%-&rAHj#fEoWX;pBEPi>R@oKoHpepCu>5hQ_9b!{uE8<{PWwespvne34PZ_ zURC_(G@(<|M5_9g`17uO=X^w74N}c-qRGV|YnilUk{+)GLcO<|-&vE!mJHOSJqVr6 zsOAsTWB>@wHr4zGnPk{+8LInfnwYcJ)%|grJP5C^;8oqvl{jhw$Yv(H#D>WpkXn99 zL8|8rCWk<-^m`5|cMQYE4@H=)%Q@ ztk*U*KqU2jnluKXR=&=63Udxsdyx7Zxrin`L9PdBXd?Rw5E@^NEXf9;nvcjVkY@0@ z-q;jc2tql$!SAIblh@6#xxpWH0go?!hNba!qu;ow5YwNV`n@zUqoAq3O%pQ;n)~}S zF=OW@oqDtj(b|&dUX}brWWhhkJC@u~jPkQrZ3P*KJh%35)8so%ZualcL9Fr!bMx^Z?Q_ zUU@z}u@Y%-(<+brQ0sK`E0y4ycWQw=4x5gC4JO(A&Cxg}BQ$9So5>)l{v`1#&<$iN zNGE@?khsZnCx50UCeNMxA|)xUD9@cte*F6pXCB9a0siF`8V^D_?BbVZuf2}3>EiD` zD^556Ad`G$O3}?9U5d*UH#zL)CzwR3ck{ zg52d-Dn}$sHGdti-s|EmmETX3xgaG$?)7(RvLEC!kO%xJ7mL^5Ahkgr^fOb0T=|Al zjX@sq%TCAZ_=lN9PwP+mzcPvL)KB_qz=T7i16JlrDiGDRr%pG>3UsHRTyYNK68I$PE>_mSo z6Up;yNb4y-FNsjll^qB;JMO6;Y~Ec&effF@?{&Gi#P;$~jW^)o9=3${S&U!WAZ ze$^^M?gF7_kmvlKOro}U-tW&OFK))y^ZpKV=e)!D;@6Btqw(rJWP?XOPnc=5sFEb;}@GoN``JvQj_;ti4Zc?A+H`2t!ndP_C#H2OL zAI3y_3&ok`Kg1*|`)q%r_A-%Y`?*4tDc5X&xwbKp=lCl%F{#h-*D%RZ^WT!UIdl9P zms4#>TBokYZmHjdNxq$p=lLx)F{#h{es_hW)*qNRA+LRzo+nM`tcy*dcw4gVk$ z$q&sEOMJJ6l-=~qrG5cT%!+ZTUyw;OM=kYBijAEi-}aAQ!EuyX5xuQ@cwV7fksrD< zTH^Nu8HN13?H8&^USsU{?{E7hnMkct4&U}unB>JxoaO#7Ch2kdI|dYax&MeJZ-UUw zw%lK)iCK9r_cv%_=DOwnQBBOsbGaX{MfpjOo0aEszk(+Dh&&Z}UhZF|iMe|&_q%Gc z-KO40lLH{MvRdxnqlsBRzvJJh$w}DELgaV+(V7%~TT1b+KSq1-sI}P?Lf~gR96ZONGmD4x~QbJ@|_>sQ^OH-5>jFnB?;}v-HgPso$n9d8Mfau%Q+8 zI)6<)B2k_{_qQ{N^1R+JQJ-w0Jb&reVUo{ZThNo{mwr=COrF2?Z($PUd80p26WXDo zak|OhrM=9`e3M_N!I}Bl;$O!k>WAC>rc9z7Zu3*FIWvdb{YFfp9B%h-(8Q#*({Ilt zD*JA~hs3dc{(C>=+A|}6?>Ay1UbN@%z2AaK^sKkXZzV*T^~N5*t+p}aeUIOXNpy$Z z^xjpDtx#NVNb*)2TkAJ@d}79RD>HJ1FC z{mi3&4NYkOkoKsL`L8jF)`!3N?=Xqhekc4*Orq7-34fOmJI|l+8#ke}^6a|qgx^w# zT_2wCtKP^qc76D(-$N6#KK#w^uZelq`^_K1Buf31f4|t+wcja!w6-yAddg4N#PrNl z{&-DH&phR4F^O9Fl>b~3DcJz0Yy6MI%g&I0`5TzzIit{Cm%`?6Kes8BYYgu~&}+|RY8?tkhYl&l3<&snB+M#L1?^J z2_`Waqh1FYT7$?UCTYAvqc~NAub9Z#nTI%4gZ)hM<0h@@!D%KL@rzbS>eYiOttE$b zK;D8^^WdB(=+r^!o}j1r>W z1EG>u4~}c{B?#?nA7Fj%Wee;ucBFsPl_+y_Em+1wb6(qt0IUc_k{ zoYrJ6NWls?#T~4@UA*20`2#jBgTFNS5`=zHs#Q>^z1Zvq39do;gA`4i_wi-` zCZ#~AHrfU2HK_tZb=W?b(}Cio^EqlEZ8{3M0yY;RPWxa(S0PP6t^nx}9KC}`mg)?0 z4M?Y;WiPQA2GSU$bMRV!AsHYyfpiJBX+pnQ)E=Z;us?}(1?e7~)P(X(caR>zq5%?z zR&nIjGgy&C$m@>aq$V@q)f=Q&Fz`?=BLruN{q2JQ%7fjRS z07yDW{~+Zq_KL?okWp}FP*szz0}ZLINqKA2K$EL1X{<>*kf#v&&R~Eh13+?_jMd~( zkQbONV3MVt0ikzfcLpmpnGG@rHUooGOw!aU5Ng3eLHusYbDG)=vKTglf+LradBF zwBJi5O%G~6Dx~BpDQS9;(4-~^*^CJqJtj6iL4s?Ew9$mdAlYODOEnn?8%ir9_+FC< zAcf)eWZ)+x4*fD-DUfkNVNK@f$Ps&kmrJU29Y#%1;}+EQ-hg8;+;Tfo}U&h(>C{m z&>OL7!FDEDDg)#ucufoHKFM+7&w|h|FTD^vr^&09e4@!`AnoAwLQr5Vd1b^Ge zO)kvGTYZoP!F)~VH-adwg+b;-@uD|<)TXZlCz(V$z>9;iPmxW!YM|pR4wh-sPLo%I z)k5M!L8w+=3yx}=43L9J{k5P{7R8D7Qr-+|3sKL*#<>o=+d&?aH1)EMyfoOL$r_M? zuz5R3nM`rg)P4}k^YWlA6Immbhs`^|Q6cf+A4`5#1}8N!@4r?C_(3FYoyVhFcts{RJn)^;f z%vfF>+{<23>#PpaBrW^ycy*A@WOspL$PcY9J`5&ka*NL4hyN%=o=N=zQ;NJ`3VTVO zTcYeA1@AM7eivd*kS{jzlAp*uWliuoleBm(kaqA|6CBp0p(TZ+@Q%{FUve)9azu<68cq~`Pd{vdaNd}>PJ&&9oxyw(OQInG|YVq6=nWs;$24LJ~A zYlEXqK6Fhzud`|0i^x=C5g7wQk=F&?b12XGantVWg5gX)JkQkFx?qA3*R!5~e{FS2e3Mr%SV z2eR21c)6TsW$I^BP?|~ftF4=YYD}VE+t?H|WRj;$**68bnwa|86r5%vBaTXeIL~pp z;*{qMkS#$2A@)1Ftw9S-=sep**lY_rYOhi7qIbSKf<8>59PS84XfImZP`P#lCz<5i za_tOCKhLT2FFlgY&Y(Y&s9fI$qnJeH`Zn00i7D5&L4&CjCtH1lc7Gl@{5IIG$+sZ1 zy4W4mohCLvgV6hn?}CY%6!}!h_ko%&Hq|xR6V%Y8F$mqee+as3(guXix9kfxXmTIO zY@~i5$bCWLJO#2C@fhIp+8`H0DSO}2u34)ROTc&6C= z4zdyCM6gQ}^P9}S1x03w4Xw<{=J#N&CM7=;ayn@6qS(|1*#Vosg3+^ubkH^`Jg&)L z5V|kBVY4}6Gg*6i;pmryyaPhD8iaE+`COAQT(8M)5URs?*kG=B9S7Nu)XxtSniO6u zaSDd7X>yS!g~HPF$SXbmIY{S5Si6KNn(PJX%cQCh9;bIP8OS7CorcYDkRsteP5gCO z(}5HXo6nd0lmVeqlnCc95K;vs4K^jiwVE^r$pX1BJid_gqk4eM2e~LLvWQ5U8fr=2 zt3DR?;9thRgsJZc4pI)}n$TNKBwL*XpH?)CXx2<}pc&Hv^&PofhF*P0Ukvi*TnVsj#6tQHyY|CU=6gL7W!hVJ6YK zrA1gckJ6Hzfgx;DRS3_|_k-LN*2tGq97mi&sIivejZD(x6q#DNb-3qajuQ{oW4#Zr z)}gZ|icD?MIxHcCBTr?UOd;_$@OlyC<}f$OYc-R_+Q!^rZwZ%b@+iDMh0QJD`$=Au z)-Bt9V@!5w z@)m69E9`b*vvp$gnI^Y~W0}ZZCb$7lw&BM~gnDo1a8D8`4Vy0EFG(Z?q+1yOoFYpc zYMq|p7eeBdzmz-v9pN{c)CHk;E_Z~x40&1lMz3(6CQV^OsrL$xF-ebi2BGJI-r*^2 zGXjKqRPWIFf>V!YX|LYld73QNHhsckOw!{YYnwh{S#7gR+w=`9YH~{3^bKohQtT`2 z*`TET!n&GV3UW1*Mw(m+(g>t~*qljvya`BCCbw#vwjk7_285}a^aE)Pn*re+nv4RW za@`r;smVAHs*O9tVVXP-LhGo3;Uk*N)m{U`Cp39idkqYq)?~f5xhu@kWS_RVE1aPT z{v3o#MSkuM=V?+Dq&t(>G`SRnQoko$rb!(TYSVkdRYDZ~>QrBN4GMo`f_Hzgp>hol zk7&{ZgvvEIJgLb;+Ga>7KfstC&(=0W!UF5L_r@22Q0ha&qMCdNLa7f8FJdD7knSnN z!poVY#rtfM)b9;@iI<|gFzwgf8*bKw)^+sMc7M3?E9p@q;YE9cBg0)x@|0OEj|>lf z%{I#HeLWZs+dw2wnf3GNaLPuuvG=$~!$nNe`M0X5?1^w6lPGdpIBt`qZf4Q+a3Yf^ za(Yx>PDX;KbkDwAi0*!me8 zR@%b(QFUN53pNwNCYsQSaUqkoNrYz6iQ#xn=*v0!w&JPqIZfJwP(4oy=QD{)krn=- ziCN)ih4r^m>d^{6D;&urdQzAi&Sw%mDNGI*Fo}9XcDON1r?8zj0_M9CK(8N4@&JKs_IOa)ePB@ZDdfYro%?T4s zegb(ntfI*ZP2LZyYC>;w zeuK@bu$m^c+Y>fMjf6Ecp|{dx^GR4!6B;{2)`hi&#Lao6FT?swWM_a@4qt|indGSc zTksYbk-rRAYA;hi8^Sy$_$zO)Sp}O7Vf;I)=WLY?LQf^%grzlEsL7VFGm|Wp53;Ka zo*BbY-;-CqGPSWSEb^leQyaU(#+sPg*b@%Z#MH)*A%6Upp_l(4G)t|mU6b@Z9K@S@TexmK#qX?5w<-dHdR1W6Rds1 znVK}w#EBO37XDFd%U@m{}(*8z}<|A(wQ0n@2^0|0&pQ|IpAl{EIT(~xBd z85z4m$eQeihHQnBrF>=@LYRgjODH0#C|j0@G1f#0N!iDeiY))Jl>hs_=RNm+G0&st z>G!;6z2}^}e0KqH#RZnUzsQ)7IC@>i;2R?!hnV~#=7y9I#KeOn8)(6FUwfMAZ;L3F|nE?_%*qh*vO)OJ1!=+ zu`K^Wu71TtE{R-?aXc3jyGep${$fJQ#rnvY-c(juDI#=S=2KEsW+~@OO_rxXaFr-2 z>ajfMOA{%yvJHToONxmkVJ*+Eux|$`BQD4o|5?tmB9|n%5?EHWzeP3FLXZkuQC5s0 z35!x7V<4ZhB9%pb@u94kB2!W6GSvdkM;*_X6)RY9O_)Xb9B08RIrBlvi{GXASFtLJ zT#i}%Je&)bg!42p{B{)fA$@Te<#Dk=ig*=jxES(@6WgTt^@$TdaVk}xIB}W<>$96u z-DJV~;2XCpiF|jcEWbXLMFA=F)H9Y|S&U)9r=C%s5c@dQhftpbkaHFBGl^X5@XoX< z;!K2WkA-I*1T+f%vh7Qd3b%4~Uv51hq2FLlfSiMv@*w!@wlC37g502(%T!h{4&%jL zSwrd{tWUhSd^ZY84{MVl6>hqOcU9dMrVdXHmVHAZn0=#V^oO+!hIml;RV9vq)kUhmn zlHl&FKB7P&j0t9CU$KlNxVNXDSYL$l@k@V6Y?0#6%9q5L;<7AtU+zm{9t$4r;N6%n zi9;nYCag6-4g2;+a84}_#mZE;uHxNCFN?eM+Ujij5(>&7QJ}O;^*p4)^QIvpmn2>5 z2eP0lTpJbh%TPXk4Tp)vBw7Bwg~P;W9HaKaBgASJbqCi7v5`gXyGMv^Eb3mq5n=~P zu9{FwN2j^ z*I4i<7q{0$p*=2RR4XQl<|ML)iBQ8S;w6qzrB4@cvZy*w7fYo0^+^}gLBR?HNoDq%jdK5d{rnc^9eU{5qxw3Om+ow=et$EbbNTrq`XRGsIF z&=Z(*Si5;z?iuHaHdX#x=Xs)MRVk`I^8~z5ol==+WFO8KyW&yct`Cr2P{ReHL=Blr zwRDlF#G+dIk!W92#;C2cL>zh&B}F7aK80f8DzG?C64qLS^oN|6iG1`L_OR9)WGKid zqB6^yAfrG&70p>PK;8!VT)ZqrsP7!D6r)%^g_x41;rDkjokaHYyO3(7SWOb#&-SI* z6cIBMV!jk-WQ^bQ>%Yhoz-)ihsF0&{AYy@i^D8xY#bK9vZ$UvEY7m1v2j>jAPIW@u((1Z`x!^eVbP`$ zmY%8M8+6`ljM9%Jc!SenF`OiLp6H0!#iF+I5s}cCTH)Ube?-h9369y0hyx_S5y%k{ z+eEfqZNZ;KLQ|QK+RDd7BPsq!I3_AJld04Sa7?shQ7hyz@s|{T4jvabNrG*0T-@Ur z)r#N5L(OIBs-J%oHjC=#-$Vfx)z80)$4G*H{!Nr1k>_!EHU2kIl_W!ZANqM6^z#WZ zPo@%|fMCo?v4mv}2#&E+{!GD^ZiQ5*#7c_E_OFkf5xFvze-3*_tZxzY52iXJ&Pefl z_NN+W5fVoeS!nlmJglcV+^);o~|?JBJID~QhHaC3~f5Z z%!Zsx>A5dr|72*3K^B0N)}5}h$JFXqS}!2Q-#e7nXRxTfLq+{0i^Y3~%6eiq%qLyD z4msl*UQM4!63qAN`ZN~R_Ud{ji|U{1`h1e0pR4OjBIFaOb9H@ngnR{3Q$N`qOAp>k zQAgj}6D3V6a{-ibyU^Tq5f^HKNiChCu{sOyl4dJ&dYkm?AOm8h3y z*$#ro5{Y^o%MlPf-bmDIu>8)_Ku=`30fJYF8|njCtcyxsB}vhWgW&$Fp*~lNr~~pV zl-@{R%rUJ&@Cd(={$U?%MT-B%q{jLRk_@ftCAi1FDO^$1cgYy)Lp%#;qF+zKRC0uu zg_!2L*B2$*zbe~8FV3QRqlF&FqQ-m+y}1-kT{mu_hgsCVsf9k9Q>p95E%do8>bh|Y zeIch(SDRbtzjBOvlD&m~nPb#`u!Vj-ndt|VT?%=+%jb3J;j8SJd&+Bsrk@$Ou4*DXJU>)nAui+RqcRJ~tSk#`elfIor&A3kb z9u~E)?4<7}31(a;{cwbAkAM~Z(u-&tQaM7Ba5&v({$k)&(QU~E)} z?cP}*J``i*9;6;f7d@3ESS7mZlco4Mch#4Y$Qt7QqN~2@zL@U%>ihEPu5aWRwFSHD zxvygB=~{oN&vQ_E4?SiWN+x|bxd%v3y){WtpWb>$lAz~%>peI|^?Z`vk45!-l0Jw< z^?Z^(oJI9~l0K3o==mgl9LK2DI7v^HqN!j1ll0>x>Dnl0#mi9VetPZUvR!Y33Fk7%L3j3ixa3i2z&e5ewK+0CdFT$H|ix=O8qHI->8?5NEHY9Y}8xbmuj=#fu%X5iieoZdbfyF?MPBM zW)SDRMW4*_Cdi8rvqjG!kv%q=WW5w|1Y+I+*{*M8x$Mg>mU|%6DCPi*`Iqd~?fOxc z7?7D1bCRVh$VVg>S(<}j&u8gZS$cusyS)N8Te8;dd3PCb$37RX7EU3zmC_bS|P zOwyL6EC|Nz)?Z+$$1%J0-YgwJu0hNmeE`c#ApepKBS{f&fEdl;-D>(6DcWR^M@h6y zYtAkJ?2?Xn4i! ztp1}Ef1c*($5_<*lcS$vQEkuBFOUS+E^_ql^JR~z-ngLmmEs?zT+m0dsN;p<|FD6bLv2zw(dY8MEe{pB;-lfWH-zRY9!3*;@xC!cYEB=}`N+PMCS+=A-( zSr`SDqlC36c>ni>XW+gZL;-RsrN5#8}4cFJ(*(j)n5eq$sHesk&(hQJU?nw_*%+q zAo%XSg2p@&xYq~-SN_KgZ3D*0?S)(CF~cAUjuQ$Q9!Zu^JzvNuD@9X1U&u(hFQ3B3 z;QR6^YK*uqpQ6T?`|>GjymeoyVn!OrROv0>FIvp_kYm(XEn$4ZqQ+_oVsA8OBQCEbj7=OrAem_?+u9E~Kp^Bk>i#Z4HjICx&Ckft&7;nsCQDYRrg^V@Q=?6w0El6Ez>?Gmv^ldzKX(lW2r?$e3)F2FAbHQVxRH zv9R755AT$6iKVd-B1zZs{13{39&2jk+l4XdT5%9uA)6b0SrS3!Jr4KI86#Pq2U!pG zdDh4x34Xt5Y3w7()>NHa8fRHl4O<)DZmN%_YS_jo%%W=eyitZEs9}2}?;cDQZ1;|a zMUts4hx+7i0Z&gE&ydLa#Da7&dXi-O*W$VvFG=x7Z#QEw$Ed4w-HcQgHNUzUt@p}0 ztJ&1uc!9+lBCn72H2SirW1HRvR2crUqIW_KwgMsT$U*ipuuqXn8Z*S;pgh^!oVB7l|Q%JHjReG|K$)ZZ{Z_H*yI7a0>$jD|5X^1Z52| zhH@%Z)~m*a?=T-Y^MzCmA=NM=-+r01D*X-PD2pon4P)T<|1JFuV;D(TR8N+@I?7nc zvI=s39&#RKG(I59+5ys;y=%*2A&J5|UtEj5R*v81>unSYthlI!7C8Y?R{Pfiu?F!7*z8 z9ya!|sM5p6k1T2x4I9Tug3`mr=?5fNiWYYZ&bFWr!$zeaus4F=IK~?@NaW0Y3u4Cm z^CA&aO#n$VzNVOLq1rXU$YN3LnqcgcqN!_o6O5Q2WzVZtOf+IyR4XPL64p9 zjEO9dLk#A#!q9%h7}%S4lRfsC(VPUn{{=Bv=g*CASURwLVVq?d3W6>#;|606i@NH#!T69QP0YU|-|4i$ST4oCX0^fC#xdCt zgXcsWj6EzrfZ)}z4aScwzj4e);}@3m9JA3lE5*-wlX3Y0>3jz39K7FVlTr0|lr(|g zDZ;Wg8Fg67vurjRvNT}%#%RIPjb)3`o@FG71g{lrGxo78VaYOv zUY1*MEeKwr$~Ln8pc-mBIA*6&`%jc~?I#d?u5Gt5?Jt??BFH}2?t6@nNz$}`L4E}J z&e+Q0`~z>70r}n-dPU}31O(r+eaN`ZQXT}4@Q)a0ugaVgK+Zy{BSzQ1WvXX6=4YeK zb(9pX7svc;OlKJhav4(nVjO3g22!pVT*o&q+@PHO?e&{+g(O3J?_W66Y6&kR+@_ zNMAHo{1cSE9ZJ7sY$Qpe=c)IA{BHcp@;szE2y)rDE>nrVAV)#|Fz!a=^CwCEe=%qI zy^>szzl_)j!7l_|HF`vd)(VbCje!w@-we88Y?4Bw{jQNLB?_MdYC`!~ zQJ8a1)I<5Aw6-Ak42R`Wke*OO%?yzQD|QroiiGMzJ=PggMVWm`vPIr$avbI{lUa)R z@-mC-%U~AuZQMNO2$nh!gKzxHV~$~Iim580q)5>!fMCz(H7Bw30cij+dChc|WKI=r z&Sq%`QU_ulGVifG)&tHCL39&Z3xC=6%g}b57nU!tJs@ch$mbwQ&>NQdP#)}`u-M?o zRASlV%LI$}pvusM$l;w6iC7oGDLn`dC{AMyqiuMi&K82Lu zoJta$Wfw3rWhxp!IO+Vn1(ZRN!fQ_(CPAuB-Q%xWaT_NrtyVo^O-$?U+QdaRQ95{ufVmCQG# z_}jFSnaQHIX=QU6r&43AviT{;sI6St{GMafR<2^6ao7Y&>JA&d(&7iF#e(_^$mJ7ZVmI7~}i=uaN$D42+3+5Lb`+*FA zHM6EUj8i@Quq^9Ia~w-?5Ulf)=DRG_LGW1ONplWMV_%lCbObpDZGX~S&GL$$&o+`2 z@easIirK?52PB8&2+L<6mr2gDYz4VVa+&2I$X${fET=*8J_pCX=07a|1JOx@iEU5u zpY*S7&LDv|mV6E=;^A1zyeebF!G7{t@;c@%7E46YljC*FJQn36N`QnQ=cmkKEKh;p zyVIXC%aVje7mz_DPjJjAkb;n^uK6U(6p%Zx($+OQO7X{7U9%@ia3oXD9841I&Fh)3 zNfBiXxdrQ)Q(2w?!85XY<}8-M9P_mK1K8a=mOC?U#!0g1*kYgH{JxSmVU?5mlL-T!- zbPc~qiSOKNXs%$H41!mZo0tb=KGcV})-^L5J6NA!J#1#?x+vKVHe0ZDV1<0foaf1H zs%CBrb1_MpP&2NDxr#--m8*rhg+1GHbA`;!>c#!O&QYfD?R zF-sGO!TPi{Td}A$;d!$I%L^RyyxE;atqJYSWR{^2gI^A9XKr9ot3-P=Oi zAb5_}*<8=EkEM%wk|ag@1q4@#uI8f!WS#N5nmD_=nZ;TD2ZAd=ce5NwEFAL}aiX+T znD5=q`YdHxdYGMMDy=%mbcpF`UM?teZV56Aq>rgThLWNsgDfJ6AqiH1zGiHM;1=v_ zR*aCtkgA^eW`f|E!eDbb$1DNCGljwC29DXl`3y0)am;s|&k*wmjydPY z9OIZ=Kjsq0ghH~;L(IQ9rX&c~d5D>(kZe~iKc)mpiq_nZslqY6{g~P$!BwLnWa3%|}RrR?IM; zAUPE^7fK%ldyq`?xrkKwCZE~nzzC@c`OGm7kfdvM9*xrKfy^_V;#8Js4uVHkAD9JM z)K_3WFpEp^$Il05ITAT@@m*&hnDt5IJxjPAE;I*9(UKu&j9FyXDS>6l_dhp<(myg= zkOXgX{>bb`lBVI?e%esXK#~-?+VcX)5_29&SQ`d8V?TdvUXiK%edWhyE{ob%er!&Q zl`U2K%BAKk7PYTjYA$6_`^shJ7c6RDxy;kNDTUpxra+0MF$UhXL#mQ77K=QW1 zd}3K9fZ&zw?dE8bbTJbI%gQoSWsFz>qC=`Ib4Df1C%CUN%UnSsSIBAqARQ^@X_nKF56*(U zW>c1W5Q8nKU*e+2o(j3o*C>+^B*3d<{fM_2*B>`J}m;BwHK%rhJO+l(|WY=neVcmF-jJk1TJ4 z+<;W4%u6iqf#6m?Wky%S(zC@vUn~~&Yv3uf0Lv;rrYOsfPO|4unT=UCK@6V9oibl! zISz7%O7G5c$&VSqa@Ut}ELIU!!wD=gzD$*(l>w1uEn%tS%O;jqzFcPM>`T$=)OPJ9 zUs|$E0Eudgt!T|MkL9%4o@FJcI%9su@~tm>S@wen$mfiCfaNEav!)R*OFs*OzssC6 zZIa+RK#utgi5$JLkWY>|JVN3?E}93W$n6ftQJ2i0S=4sFWS(bH+x?PRs0NmvCe#+Z zWIoHHw%{eR3ya!bm&_qj{GPvLrm(181 zQpU4jKTDazf_+$y@=NzgBx@sN5Xfb7YlOT3 z@~62+=0h_s1>}l(fg~vFnpvlo>_atEu9?kQaOIy0sjitHv5YGw$Lck64M~ca;>%`^ z!IgFfrP{%w_C(jrLnQF)Kctc|T@z%lt_7Jxsa7OX+qG>Vi%AZUz;B2kcrEU_d6Y%% zzpk6-NK(XUh`}}Cy7>pksJC2RH*d43J;-(Q;RaY%intD`)<9X;O_$}N;!)a0lE+A3 zj17^i#C5X{%OemY%X*PT?Z2*@{bfE{35fZY@|nVd_xqvTH0MbXwK<<$vw1_=8|pdM zT=OnVLx|Z8sdCLwBN>D86Uc3|LWGj`3lJZvR4LxJy2fZ&R4T4za8G`vp_-$HCzo0`j1DG-BVTZ^BOg7^Eq)ewFsvUWWy z1@EOn30VbNO2PYSi$GcVt-GyJ(lp#NRsea_YTky#zn=M+b&@2-zb5>cRlBXsM_m&x zWc6TqVWZrG6tDW z6F5)bgq%xRW(RC(wl*+U*07Wn!_p4U=u;`C97(1a2{G@0l(wp{q_UK?>ax7YQr>FD z@&QXls~t&B)Mp?WkWZY|l_XumvM}dLRx(R?5}ccYJYmfvNz*pLz8l{yTh;o61m3H5 z6jGE%StVm=@35R=z99(gP?A>THDIu}yXBebY(uFCe2cQsVEDzMB4*-xofM#xVf@zz!;bXI#Dq=r?Y6XqvlVoT)(5`1wratxe-zl zq=EH#XDnUryYZ@HBkQRMiG!FXR*ML!0n*%hF+#qFRL@#3N61qU)6yCpAq_#Ev!+By zOOUqK>xjx zv=+1A2pg7mXK zCCR4wg>(5O>uVM@-;=Fu64~}lNR@1T&w_178DRawf^A0`Xq{)lwxbO8YlyRZA;?hc z8pX)AW6UeoJr->HQjlRPm5s-Bcos0i7q#63nZVn9gjMN9IT9B6@;XUyCN;u(i$sp+ zRZ!LlYi@+#SHoVjR*+Yz>mb!gUvTZ&2J(h4_#SEe?R=EgtSiHC&595_Uw+eC zNRmaX;{k|y%leE3Yj_xBoV9@k+jSfyZ0#q>7OGdrTZg6i^%-yd79m)l6f1`$=+#u~ zuL!~Vylv%@1ocU?qPt=LWYL?zu|5;5{4A-P$U}ug`SrM1){{ z(yj9(L4Dq{u0%-FDsa`wxd}Jk(1b2@twaWFxRB8U#JeOKeu&C#) zmRe7;)PmX63i4TMJxvlkJ+#ysNs_4zg_!OXGmb=-j^D6eY8@a+r{|lJAm&r+DoL7{ z0;zB>v%x)McT;*F~)ga0Cx7P}*dxYTj`poJl^YQ2V=hl!2 zsaO@RxLPAgvS`&B0Ciqztz^M9>NSv6)-D#@f^UL+Y5hhLY_G4ZD;#jf~|~K^*2~o`UdhT#B8z#_oE)8c45zN zw#G%smk{%5?SCMfASTmXTMVc3LZwWsC)~9b$G` z`}#|%0kR)tul4)@6!?-3rh+x$pw*KE-T?@59AbX3h7ZJ;ur`$CCu_!Fna^7wcrEv+ zr42!m$Illa)lo~ZEPxmsEk~^qET8yNp5-fFs*t3JO(6IS%TcQq%MM=>N#r+i{-m<9 zWQ=wIVs3!^Y&9M#+tmn;pYMVkvs%6?Tk$Kz*l=Iz32QpbMUVm@C#}xIWlU6AI0pea zXC=Qz`OwyB0&>xMQ;L=XF}N*$x0bO?18EI0m#uuS%hEpt!SVBl)tDqhTLbbU#Qb4p z%NWXeFvwNwV1&E|a?QFx5*)?dw63tI*?rT>B?)HtP0JjKrOVNaIp4HmNP@ANYpsol z2}4Y-wNr{vcOc)fzK@8R1TlB4<0SG}A|2#k>k3Jba~`|O8(4a(I1eqw?ViW3MI!4n z7gFW1TapB+9qcR_OoTLrnBw+IDfDX~t~RCZ9W3qoz_l@uGWJoHS3oePtomVgjz`|+OM({g|d>VhHsI;w=F;hlPqIN z1i@|kxV?r`sjI1v+ecYiK@86K$L(Ti)ElA`$OyNvZ)>S! zADV!vg0WHAJ{cjSA)hDg+LL6=6i9UgewD6jk0wdiGC_{RJyg}~*(7rHOMz7J_NFPA zD%d;Ju=kN^rgiOj7PSTI+I3m_ zJubIkUHdtb6fqbCw_shnD@j;;4Fp%(1pD55SeERctq_x7$7INsj)Rz;Aoc7rEE7Qv zg4DMsO7ZXKuW!#FNuw`uV=L<02O^|ON%*zTK1L!}BrLswtY5tXyCiXKd^C8u3O4TVsqB_HK*>+zk{+Fhk z*~3`y%=ZhJgU#(!7Q9x8Ys<6tNfulIu%#{R*i5Wpn*Uwtmi82q;Le$rc7a(GLt7c! z-qJ2g67)t(y9tTBMpOlA*wXGq6123X-Cw5i>)g_Qokac~R|itHveQVyw2n0dX>D)f zRO)_-Humb-Sf4O`j}=?-ynTVCdYl{^?d%%w2X)3TezvolMF^&9Zzq$;RMQp55+lKTQ(M)9!Xt7Bx@1+pRg3`nF&XyB|p~PkY#DQfLceyL#Gl zIF+hlFMBDAs!uO_HH)fGFZ)}T#Zc#0q0YVR-6XOPQ%G`1f_1)+eT_w}0DWw2zHGaC z4?`c@Cdu~K`95|5j!{=d`q)KTaD9Fq*33S3Ef!VhB)dLIioa?l+09tgmll)kHY7Q^ z+VAwWd&(Gp9qVf+e1J8S<9QaetDpTGNid%K**!^uncL4E$}+zX+}A^?)=Qx)oXbF7 zvUjoIy|Sx7`rCh#$T7bGoo{KP_ z;2VWw>;o(o{0@Ro8IQLwv#571rrF{{OcmB1gPi|>oF~~UKa%n|$Q_W$cFbZa4MCz` zfNK}_NGYNn2p)ky|GMZj`yCdw-KW{pS=7j!X3r*(eds`0(`@Tw z%qPWfX}Vp6Bu!k0(hEXNhFx05`0qN)u;Wt56RojRNrLrxjXjklm>28pxe{t|VhA)pHS&3i7Spl_bUApKh}U$QW8}CPU12dkhO61Iz%~VV`CB7;?tF zdA5C*MI9An+f_fsItTZ_?6iljkn$spI!v|O&LYVacR)5n&b#fsGR8kn*liyo$%(>i z-Mc6z;WNx9xFWRIZcY+xoxOG&64}qEA=O@c97(X<57@aR!FE4jH~SoOmZ@?f)d71b zNs#K0eUv0fb;!OFk?Nr?aLo?Fz0jjN)kCT;~`a!y^|yunK|}vG9Ulw zG{^p(1xIE*N_9&Ljk?Al=WVf?N~fc^Rv;Jc(kyD!U9xMjs8M&xZbOoyEruFitOM6u z>_aTyfV78v{;)f*!JJbxl--H&ERdbVasUMP1y}5mYpHahzF>029>=1-a&pCGd$D-~+$?J3^3C4V0X9!8K(ndQ|NP?CBAtz}gmF_=JB%B(XsO@4j zmt{EZNrJV`aMrUdf*4%uEa&Jqm`ctR{Y8{ZB*9FvoVzkcAK3@a1z{Xoj=n{vQe)n7 z3bM3=m`5m|GE($SP!?X7u$>AVvlpZ=#MsVp7Mv-V%5^TW;Hr*adk;CeB=XsRTqQgw zW-FGSqWu8*;7obMSx5rEl7p0ndI@~3$B-CP%!%2Cr3c55C7m#fI$|vC%wn`uCVNu7Ban1pf z;MlKn;wVf3a(i+No%Gnqp_}oNY=LeEtUet3gkjR|zeKPf&zB{mnQt&>R z`p$4E;uB~Eu62pd7?!mlIO-CeR2FqlPNFjEUc4 z32U`jdO7=8T7xWum_AO{QA`DI><3u`($6`|G7@AnNV0RCB!#|Lk_FP=8S}F&YdXXn z1{vhsJtpfj7X-)iP^Z8zG6tWJJq0nZIF(sG!x-2)uQ~}NX>`Bw1&A5u^kh-b9glEk zv#5K_UU$|@5!)f3>yT=s)ABf$l_tIe!8K~6^8(9JU;43J@MRcDiuf1gHsv##W7Jc| zBb^i$Cte=^jC3Y*sxly2S1c=or9OyBGLIxvy8_Y-D!KVQf>?N#*(+4t|T(&w;)xTGm-^! zMw#ej$W*j9$DAiQpOfV1)5gH>QLrXVb~ce@X$f%W9?qu8&Se=Bg=I;(BlGd!monKY zc?#=uN}r4QzZHokw9p!Y9IZx%7?5NTpoggNVDj>@spXp9NS(blnlkQ9*3HH?K&V{pbjHywV z;anjJuBv4?xj8cCC;06G+cneC&P!MdKdEfb%BvVsQ(7f+_#xZK9yzi`GS<7X;?|j3e z=FS`^nJL6@HXj4<} z(bhWiN#JX+Ab8}t*7-OhA8gk;=ko}``mA#{MhKR^(b+>1l(p446cK~@Y;%rB2$r?Y zId@;G?ap5jF?bzdhjS}J)^&ql+nvzGpbxi!>~RuF;0^gt!u_-$`<-PZvVVR8Iq2+= zsrdXws5=NT6D zCe@=(dy?Qys>hr)B*C%Yac8rP5mRBt;rmjKJ6R;M6&<>xl=vM>m(ma9lv9%=xE__` zBuLTJn^be0p)Bf6syR-ZKV&P4t$;HZINCYyT)!eky;1zUv*HFySZh)%O2hXOpLh0= zWYay{xB{GaYTuNp@Yoo?Pjtbt{wGDf-}sVKG*=29XJX7Bj<|)AqV<5BYnO)eN@pNR za3}l~X9h`zHXLG>z;VkJ=Mc*zkP*=KtIl1L6!GXrdH?+1PQKfevzQGrV<6^lrvgca z)^`Eyb4XsjgE8=3Gl-c4a@~20Bt>ionGJHwS;%r2q%G9&ma~cFPY_%WZ#l_#Wm)Q~ z{w-%HOBt9GGG-*pEl7nucFPHqgvGqQsN$|Gkf1IlSU=6eVH=y2gdQ0)YGkeeJ&!XOdde0fkqK?e(Ij^(eJ+5=% zO!J;Inj{##_nZ_GIWpgEgfUAw)kxktQSKKca+SdM=|#C)IY#|9k0nIxDgg4JniS*D z)AH`qEV+;h&#lV4$s{R4JO#fuL9do~vsj9OJW&m0A4?^Wu@rNNMa{VK?r{>hp9I>4 zD?oX-fh9{Y-%`3mky7PZb-bT6`~bw19$P7l9VxW(Kb#0>;_e8JQO|bOa>uZ!vTC_0ENbS~awm}l zWz}-ui;x+xO>4PJ@5`r-yYjw#>bU1w)Vfi}y%LenJjkbxo9t50Ya?K^d<;_8Jv)OWK;(zRV6Du`H^eJG!YP zK|gnNr;x~X?0Z<{1S7nwTY_U$ox8i`Sk&n4?p9?{znXP-m$0a|cXwB?sPWw0{emQDdv|v| ziEKNrQQh585v<|%JjLFYd+Hu;EJ;{v_Bz~$)f28cxXDE^CakT8Z4pm0gXJJdU64NR zR+ft(jX+*@_h3>yn{JFf)jV>o+ z)c$>;Ymo%|_l0h}jPdvH3*FkBO6}hlx?5S)R}U7tG38~>xZ2>XT;x__QOD{Zx$`Pw zOjyHxHy#x%arcn~`|c&K9Y-<#zI(a*C`quVUhX#F7`2C8?)GL;d)VdfIFeuwyWIVe zMeSifbx*RWJ?skiB8%F?e(qi;3HGon-Q-GG!(hID=?*0c_OM^NBT0hw=Sz1JNw9}q z?OvCu{5|Yiw_s)JL;q-bty_#mtx;>;GAwFETIEx~#@IJ*Of}gqH4eABrC8Kh-R4#$k#(L5b>8ka z;}})LY`47>f9_x1N?yC7f^@v&`^i7)emp33m)h zFyl_RYdA)Y)l=>!7B!nrx!YOP2tVcSVNtW`l)IlKm`$hL!yKbV?;j(ZY+x`{ft|lMU{TWeS$@me#Wg%5|n<%eTrjL>1W)=BthwC-0>WvN6*q8|;^Sry7T2=Zb3XI$r~C<64w4%2WuUy ze$ky(zOX7wLl&T4P{xt@@PnVR>rJlc`P)B>lm|`p?LdRL+SW1RYwv{nWK^j1PN{6aGFC_`&S&(v}ku0M? z+JjUK9U=+7x)K-qg(T?bxX>AnQGFN}x-7--!?;kDc34($4Wx4DNfxzDD~IZl1UXj@ zHQ^YQbLCJ=DSpnCL+dz3ZJjEiZ&*~$RYE&Rf}E>_zI#AUcAy&i$8}XgW=C0PReH5h zeioH;wNN1zReH5hEQu_u8}wnd&=iuKsGI@t>t!rl-v}Kg32V!spYeD;AylptmKFS> znhN(|m>02z@C!Hy?&CU# zDzG#Lc?V)%2=yTe`ngMJ0E?<~m(Z&$s-;~*qey~QbP0{;7}bg{p|_>@t>_Zk!ZGTa zRnO2K7B%X6h7Pi*(tC!EvZ&H~hE9+KrS}Y-=NMIb&(LKl{P(pXvQgxp4a;Pf_e8Cp# zgLClZ&~cW=77J>&>i?HUrQD#b5-NJ#4`W7HmYNGP8a|IBVkD5=kX z>oYVICXr=fONWLg$ryhQz7k63RBHeJN~rPR|K{^bs22%*@9!SmQ4V!}B{Z5u9yy!= z85Vj^rt))sE%ZL;qjG*NG>=8~;cFq7IB+BoY_HczU{$wOZv@h|A^cVg_g#!sG4y_t z%TW3oO6-w+V8yEhZ^`gwKFHq?6G$J(rx5hU7(ZqZ%UC7R)0WBmK;HD_+%$MM3FI8e zRgfVd<5Y}a=kdPa{i0Z(6kk*g1Hl?<@Xwd%x1m0GZ(-^KsnUGGR1W+LBok8M)v$>w zCVDwYQHXg*iTw>oX^_dj9A=r~%O4{|1 zyah2>!|8sisVwQf%wu`am(N%-eA&V>!xxqFOkdO)bfzx_8%JqXpzX7iME?X^us76s zwlAusbA3@;dA=`YARnCF3zXP(K+ZfKDe8COg?^0M?u&d;ThN#2{*X^ysNqK{CVCVI zK7qAFi9f*PEo(id+0a>PEqUUfv%Y6|OU^_saKlSAkh`~4dex}49&tLem z8Dcs?&MSRc2uC2@Kvwy(4`TX&e5u4AKVSKxdUcHw8)r9;%ymkle}jCmH`e>|7f64Q z4ZeH~|A*URlM*|sNt8AeG!WJEoBbHo^S(qs0jZ`!sx2xex(*2T{I|ZSvbOos3}Uc` zzECSNL9$eg--kPV=?tlGeq}51`^Oi1EX3eiw@by??>!*PK|X}Cf|zeO=iMq*bYfGu zs|sQQ=?L-_$X-8YAjo=rYQO^$^@kKp9cvMNW>cgLv z*l$DWxF!TL6Xbg+{g{gJ`{x&5)cE;T3HAI>km`glYP+BG1-JWo_!o#;wNCpnYSjuv ztu1H#7`1Ah^+l~(=X_DCR*o-f)jIFX7u@y>zHDW==*w}C8&Kyl1ve9cdVTiHy4cYXMxdhCWTs>g2nva~s@Kk%#2|9n{qf@S6U zvWsJG`ErtDZu@ebWA6AOo{{<7^`$Tfmi3P>sulnGf~_b7t?(tfJEV#Q(LDGEf7#Lf zL2!-Aqr~4k+=e@;aod2@3Xp&yFl>%DA%jVa+G62 zUNx3KIVR*i#ez>NwTG5^UPBgqQmGqB3l?nGOCb5Zb}ZPgK_p$J`1f!=;=N2FkAzbo z<`Hj9giHY`=)EUJsHeGOyg4lDO|voHhb-fF%DEilEtf)NErEPuygekcSJ#0Q_0C4b z>;Q@NdJfG8J(lI)w_MuGB1sYTpOrmU#`}&WtaSj{52?y}XNO@bI3r^z?}dh=WN2eS zPD4yZZy`y#HWTC`$m8C7BQPfTl{3zpDaAhvi1X&Ns56&1Zy`xod;$63HjVR^aX#w2 zAkIs819MIj_`Y|1e{UtPD@iteTX`K^Kdj`Xj>4EQeN*5j)TfF!MT(XUIct4U`i{n! z6!9~N2~yn~#Bv3s5FGzh_a>4AXMfeb=_J8bi0a-Zj!|c$HN5RCC05GqRm0mS#s3Yl zhIf%;)LC{7?+VL{kP7dntKnTI3C@6Ocy~EQty(p_d}FW`L49g?MM=`=iCui^=Sgoq zNpLl+mbaco)v%Vgg+Ql?xLlV@dmiNO0a+XAndA!@XmX~iV)-bq7`YEp- zN$^zWQ{Jm2nc62UQm1<8zFcVtDbj*Bp8Q@-otOo z`lvok^g>en^W{YE&^U_mug^E|u1fJoZv!uvB1X^2$fZR2Zv`yn0f^n3i&H-o$IdG8yENSa|BkYeSN$y}uB?YXPa6 zcn4SxKui`$bMG&fvmoDrJmYEOu@&<9i$fsKdJ9QXw962KN7SvnT{1??^`&_VrP88X zMQOi6s#e}1lHfYzb6)#Yj0vtfw)Uowq-g~q6@E{%wYT+cj7ihVg5Z9zt!Jl6sR42p za(>>c!qSXm+IyW@+Ol-;#<3)U`~j&tdaGH=yb1e%kj~!h2{Pwl5OW8li#Ki}N?02Q zlCK}UTh%+tvXJxX=2dz}#%u+_miF+HSbhL;AXQKA5X)K4r?;0p2~(x`+bhW%K@t{s zAf_OsO7g~XjQN~g{gS-5SxST89xch6%Bkvt6opiMy-X50S{jlpju8Bsc|Y$fDdIgy z)eK@@@;0(80BJ?Co#hjdb|m{E^1*G9?B#HbI*0A={dr$L{k@y_<Ww4`=GQQ99En`Dwm?3^yc;C4ti2$wdk?=$+nwrs7-W=}C`HTLTAm%h z<%y{jqdf|OJvPqk%2ELYj~K(=Ns?ei3VYY2_-jkpyUQ_ZuNU@ePp5Wi4I!U%Q2KZ; znWY2B?;xq(ec z$@H>VPJrOiMW)wuF6Hdc%1p04%ij=FmQpPvN!Oy7#xZJ7G~df)QG25K-uooMOquU3;uy8}obN4rAl0WNK@I17 z8#zYRaDlgtMb&VDw@->+!v)?Qj!`vS;N|%Mdn~BW0?!}`?lf57*;4%99Ts>+Sk&(h z3%xQV>Do(e;fe=r(~rEFoR2DNi8qf$)p?2c5sPa35^p(4P@g5&;kUwI#pr1@*hSKh}gH6drbD*Ki9IZI<-*0Qt(xlH+d!-C)1_?sk~ zMP1wZ%G=MPuI+r~9hIVWhkS7LTkT!=i0Z7p=F61DD8Y)o+M7)h^y+G_=pKv-YxsNt z?#)+wi4o$${h({TB$71kOUN0oYklo4WZ4Q512G%CLnOic+T>mOKX>mQ?^Ct?|Ihbj zvq@#IH7a#fn}kY{{4Ip6Q^@%Y()4D-3hnDaH~nrp7P=DNJ|kjt&l3t8q(SJnh=u@|#4 zK|ZzlxTE{UtP4SoDXHv9be4HBYc`1c^^M0H*>BEdEd-G#8(+zK)sv{Eo3sAm2`g-B z^=!`iA`fY2$(F2w+nmDa46-$=7!%dJHLEmyu>+yC>i-*&ngZg&9&w3F=j_&p)hgJfy4L%LlRsGs&E5Yud|_&$32>JYY$GPbPq@w#0pT;Pb5M zAWtiq$HdQD#@eXQv$nnKG>y(@KW1%5K8-9n zzm_8x?sj_SnC_Om>3y#D#D2HXl6NinDXWtwlg$)MKCtBHtl1z7E!pP@eaP*z!jexd z`6cV1C-yA>OWb!Mj%Ho{Pw(T~IqN3-9ptP=O!W6F|Hx_ya^CfJ_HKRt$m#%6!V>qk z=^t4=^5k>5_sO@1OLt$@b|ZggPywWxjdDj^fncpCQOg$yO8m=3jkDiK=Dl1X$N}kT zNnM+BfnXuXaFBvQ^}QT57v!{{`aUMBEXlD^g@PF%uUgW^k~4$D``KrgCGO4Wtf0?F zj?6b-Skl@01i|Q!+2^PwuEi+W3UYQE`|iK>IV&ji3Hy`*IVUJ`kVyke+>GelpfpHl zO9tDh^MVE-qb+gm^S8i!!BMjPbv%6!+7+icDk z1ebdfotrKQs(8ZRczMA4)Cc){TlpbRWJ=iW=&TGcY(;audfOgdBP)!+k;mHk21+z zWAkyxMTOuAPoi(&R0uYJ$oO0#co9Ut?^hw%%tU8{6@p{`cD0DUk$82G^Bog8?^FwN zLFBx1Z7>^T!EXLts@lO}Pv)9F_S{s~*0fGg^m~`j9J9}Au53x&U?r2x!$oZmv@Fs|yFX{*HdJ>&4>IWZs!tczw7ONj*{@_ZV=-2&RZ)p(Nr2V%! zBiTM?>R3GyIp2~8OWL)aV6l&io)2#n90rkRGa3h{|LEIC&vA`|^O)#WWaFR=d}J-R zaZm+5@|oLSb^!u`Hg zPB6ifahVM)alIucn9e@__;T%&6D;y%vys+l5-bIg)@T+y>dBT&`E{*k!OA@OG`DTo zEZCfuPm3VyC)YlkjpWlRxWJPrpH@K$Pv)8jtiqdYKCOama0vC*urR;(AM) zpzskFHO`b!velD0=4wlBwVK-m<$iHKJUhM5j^S;Cs-8ssxqWaQ6MaIdeb5O+=A!L` z!@s(GqIZfr1ZN&);*LQ#^XwFy>&dvx6&>yGN!ijn2Umi;VTr3(=b$0TAxm6~bq?Bq z^f+Rlg|us5or8%?OrjH?K{^NJj&V)Tu_V#YuHXe5erIx-C1+UDEy#&w_|~}2lCv%8 z5j2Q1X=6!oOZo)Kgd_I5#FkuXN&jFT$Q_nkXUTxz7{~*bG_ho0P&w(MxD9(-a*KV; z(-U*$4ZN3!1XJ_)xVc44to;4IdyB0o#E;geP>{JP?w3mIW;`U0g-ip;X!KsXXsDCYb3-^uFGh;5qon_1BnS6Np@YjR{Je#`(zA*4SVZ zh#VKWLAgTgBkOGAgO#3)%WPu%k2?w`1qVSoSu)MmYf@0?bQd))v!D7j^2C0x(vsQU zrya;-OBPx(CD?q1i<)EZw`8d$(}Ox^IuhMOoEc2?BpLx`1=HbE);?P|%-+eG72E?K z>8rDYr6983X9tghNbj8;tnnn;r?Z1~?4$d1c2Kym(-Zm335s~a`*gk4JSWJ>L)>0o z5Ip2br1_p;B@^At_XL|jWG~+nw99g3MQf*vgRY*8Ghf>FabI{?94rsmNA~HxK{8|_ z`}DqGA&BhLCBafp#$~qaz;_In2D?3(<9~~7o7KED=uSQ#Jqs@j`g#%_gUf=E@R4?Y zI2Z>a?fh^s6-3(k;oweBqBeXuSl~%C?|nFU))Q`3HzGY8Z1QAoX2s6-F0fVjaPS96 zBTGK_B;Q$1^W4lfmVE8W86e#(aWkSvf)XIZlvD+oucSH1dL_L;b|@JQ^0kt?Kr*{X zS<69+D%l89Udc|7`bxe8>8He;&Gnk5DpujXq$S96O8S88 zRWcSN=q_c=1Gz%UV<7F7YyugoWEaSMC5J#>R1!azYq3{J5s;siTmf=U57AQxq=J$T zAdQs_0_mY-GRP<;i$U&H@+8O>C0jv$QL-0=dWxPOK*}j8cplfQwvud+7D_6DbW)N7 zGD=A|ko%O30C`QxERg+5mVx}LWIf2)y+reNka9{s18J<}7|0+c!QZ%E)0LD4c|=JK zkj+Y3gZ!wZFUa}5MNckBB_;Dgnk!ie(o@OHAfuJ+2AQYi8<15>l0~@|Ta=s!@|luy zAc;PrupY>zN;-iwRWcZ4ppvN|)0Nx@@_>@HAWtcI1LRF5`#}yW`3d9?C56uCdX>CM zG#3ZCR!L=$_DY(9+@hoh$el_?f;^&RHpnYV9tPQ~WCO?_O5O#@>MIHlf?TfTcaR(< zbOG0EkdjM5?p9J0WP_46ARj8}4{}t=c#vZKM9)Hy8cJ4ybX2k#WTcW0K^7=E4Dz&+ zd>3*pb}K0ga#TrqkW2fEo(3R|m2?Ifq+}?_C?(TC?oqM?h zW{{M=2c)c$??4(T$t=$G8m#03kh_#r09mi35y)O8T|x5QBBc)lDW+rw$hAtAg0xYx z4rGXuw?L*VIRNsgl3zjIR8sgNuGdFON`jcdqOdy1MM_$NG*;3FR8;}D^lBKv7`EQf5&I7qrNjZ@EO6q|O zSJDaO0VRV$UQsd?WWSR8Kr%*3>1#nsD|rK?wvzoILzMgk@`#c`rMX_)l@tg0MM-6l z^F~SOO+gwd=>alW$w-hnN@jzsRq`;%2TC@8Bu7hG?}A*WB_Pi!c?M*sl5HTd+eOdEAeSgP0@6~+ z8JBUr1}P~4GEYfWkXMv62l-q{FOWZ!j0P!^D|+q%X`*B~$W2N%f{azN6J(K+FF~GG zV#?syQF1oOPfE&wWQ`L&wLq>=(hj7Nk^vySluQH}qht}tT}sw~tWmNBWUG=rAp4bk z2XaJ7=H*v57D$N+ zqVNDn4<)~XELBqY3a;13N=kwxCQ3flK}suW3DQtWACSRH#)2$WG7sb*N*)9GRmmoh zOD9R`yFgkgIRr9FNxUrA;(jGXKweRD1;}Sg>VPCCOIaO2u2wP#q^pw2AY+v*23e-$ zNsz5dwt^f`vKQp6DN_0mAdQq1EXVa4sw5laJ|z`FHYv#g`L~j8Am>e$vPOVZRWb{t zo04T9QZ|D|rJXm?5R_2dS#$Cy*{m3SGtZ8n2`{$U{mhgKSmO6y!4{ zJwOV~l+s6nT%u$)NL?ilgWRZO1IRcf?}982CUKz7Q&!r%jDX9rk zUr8H~flB&=OjR--u_JzO8ISgcw`pf|NyOO0KPbgUj@~V=zK=vp( z0Fsy|ntuf;t)y@ju2(}PB|&;9sSYwxNlTFXmGlAGtYj?69wqZYeo^um$XR!b!c8C* zlk1{MLFy@~0n%PcYmhNY`hwh}Bp2jqCG$bv zQnC`{CnYa~T<~{MxErL7l5arzDoI|$wV0>mJdlk_%7J{Pq#j72MN(ELkg`e!gS1vM z6=aN(`#|nfvKHhYO5OnZR>^*lv+t48e*&qbq)-j6S34!eLB=Vm4Dy(grXcSq=>c*? z$w-ik7E9@~L7FOg7-Y1P4IuX^c^BkmB?mzcD)}8GxL3-eYq?$(lw1nZLrG1LDN5Ra ztX9$=8%1SnabWrjk$ap1(K^|6;uO`>x6(vPMzEDyg(^8URvK$wZL)N*00iQL+YPhLSBHtCZ{kd0)wQAU`X~tj+bh z;6c%I0Z0uc6+pTuX#_GsNmr1El?(%UP00+9!%CKd6j>&vuLG&6qU2YQ zN0bzppso6!NXGe zA&@Fc;&r(eZIu)OxmC#(Ad8jM0eMkL2atVA27$yMk91rK$SftxKvpSP5Av>( z?I4Ghdm4L24<<*O+V3TS-xn8A{57tX9$hWQUT@AU`P? z3Uc~t(K8L?G9^nuYAAUIq??j$Amf#M46Dlw>yLdhJqj0mu<06+q}I z(bEXzawT0sa+C}M8Kh(e$URDyf^1T<4rHH_w?KYWascG?wW8-&km5=TH{*I$Q&JM7 zrIP9(J(aWs8KI;P$aE!RL6$3-2l9%N$3Q+*vI*o{CA&c4PfINhf&5KLygApRl9D1I z4V7F0(pyO#kZDRffGkon2xOI#$sq43Sq$=%k|#mVenvEJ1-U}WUXVsgegNsGq+koK z*Bwf-K^|065#%K$IUswLbOSl2WCTd~tSFoXa+#84AWf942kEY4JIHt?pMfk;at!2I zB|%HB*ES`kK@KXZ0a9q4C~OTuNs@58PP zOlwzG^cLjGpb&_>8MG=`*v9#cGhOq={rm50f=58cgFF#D<4N@U%TER`vQOrN*2ld! z`c&{X$QmVIfyh^ko(hhDY*L@XZGGvPw?A%w@zUp09%QzX)=W&RRrWpT{;sUPc}PV| z)&{wV+J&5-4mN;%V~P7h$kV|QPq^h@wq-pNG;HVFM}I$MUC_dl$(e2P$Gx6)L3<|t zJzw{$E9-(WX;JHgNqKzSHw4xP^U}!k!Gn2-d%tNz@U$n<+f^Hajh<}Dly|8%2Cst1 z+kzW|Z6NY?)y7~4h`f`vG1vnlZ#ZrY8nox0P}Y9?alCzFZeuWxNv6EvxG|XMN%WT1 z#$d*AWIdwfjrfhhCMN!^@V3=l&bb}AEZ4`}H&r$The70R_sv1FGyAx=*z(u3-;oZs zb#Y{l8D?AlF1t^+1^Ym9LEZ|EfZS=xz1C-Y(5I`~NNoJ54H|s3f6+DP2`E8wD!MZ$Ao4rqPqbq%KW<49_dhZ9pc_6Ko6bF%S zJAV+AVd8s~%jbh&PFg;Dg1@KbvnO~UEuTHX$~^geYxCI??C( zK0mFnUz4)m2iO;Ef{%=2`+~#$d|CRHx&6WE{T-R?zrXs6t?B;YGLT0L#Qodl9|aXa zp0lK^{l?2jL0eDen12niU%@J4%*R0&kO{Nx(QnBoL2r)IFQ^;{27)|Oj^6=45DW)- z!{+Sv@`2!XPsU}wZ;7!z_&_kllP#I@Re=M+JSIlIDsUi}@5%hkgEs2lb_Dn|xEG|v z_4ZrTo-FeudN1R&Qx+U$Q72jJ@`d16r_rhQ6TkPlx^oPg7HjD zX-nMb_hoPgNOw!Fvp!!2vqAbG>QJx%tG3peC_9OkUh}%4SzIUX6yBR z(AATuHGT+YvyblOAA^OSY{`_m{}|i@B6a^UxDQ0?{$ua}h}8YZU^$4?{l{Q6h}8YZ z;29=b_n(3nK&0+J1)D*n?ni=cAX3v`f|7&${xZ@U$AWU6j58OX#y#_oV4EjV-}ocQ zz9qG9m@wCqsP3_F0*KT-7ET6{y2rvhK&0-ma5jk4Jr*tik-Epi`upasExdTJt2@6_?B-gh zg=Ia7=31wR6`APhcY3(}R&Hl`*Z%bIFo?Vne|p$yg!36^Hrui~+p-FWxt>HvZdN#9 zl+Q=cOg<^WmYeE7)ODh%%hky$|)E(4KsTo|tKBszD8;ZvSObq~WA zJlUMN(tZiEaU=URq;M1Rk#oUW;cHB^HO>n6fXMiKR@i4Ww~xGUes#L#Jc;(s`Qau+$=5c{54VAc!t=u&AfoX6@Iw&UU+0G(c@p)X z^TR`)L|@6cFw7mtdq?Je#lpv#=vOj|g=;~ij};4_2a(c?g)f6h?=2R->Pb|uV&OkL z;eFx0ic>7yk0_Z(6%UJy=RKJ3bnXeo!%iSQ<1zEJ{o;D@aH1!h&64N&d{I1H>`C+; z&f?+yAkrGe!-qjcbMbH$h_q_)@EImXzSUVg{Ff(DEiMi}MU>2PFAfhP%JpzJr@c7r zJi)iB9^IFOJwc@OOTzvjQu-y~5Kp4AE(u4$N6NY+9LvPWZS)r6(HayLfsPwX72p=iEY*>Veel@XdI2t}u*45zz5Gm{Ga2kk|b#*w$ zlc=n#!@qmNedA_3Z@D^Lm4~=lL8Wjr6I0dpjq@&Wq|hW+iwXX#Wex4OK`V!yKrCc+TG^-$mRuXoW|HZCrJ{!=wZiT2x$QLj zJMxy)4vS3THk9_M8y01vUudiwz6Kv@pN8REAksb!!}ma>eHw;)Jc-(;VR#@9dBu*I z4a2VyB{??=e_*2HbEEJGh>XvT!aa9*%{qT>93JyzZsr_YclWedT{VV z+^X&?m+ixfc}U}{?6>8^R-VkazX54$Vdu}C!#*GbE&0Oc+$Ed|GR2a^mUImt1X*gy zFP3x*S9-!<^NSC)M@zUf4=G?t&#=J)-#$jZ7}-0lu+Wic@AMA$crw{MWpgfUqk4y} z7je|9mKH_{fNq8~zJKMx@;E0En!8<%aE7an3SE<%V5BWQ@uUyL%Fi zQMqA%Pq^;>OZ(wwPhN?iKZ&oG$A#~BVy{60?os2y10Wrg{0wr7l7g$9o^hFXC^;Ww znUZoK8!U0(pC1?2Vq)H~q^&2-LEg8-eP48Z*ahTckO|=cki#Go!!aO^)X0P))$D1 z$~p`ZmG!+RdCNMQhfKA5aCMmVqHE{q_jjHMOMpCjJzupw8J6*c^SRSTJsH;aBszmU z9X4m8XOO4ER`8Kk>!-tZ@R4)M)8SSS`3~MQ;hvYcAIiGTv*9riS*dt7?Efo-)Ao%;R`bSiqbCzG4_fl5B`<|rJsD@7pUgFVDXg*C=d9nK ze<{3ou28v`=@0T|J4;_&dTyd3^TS(szXGJc(8d zcZJV`$ZFxPa3hGU7VZjP0+H3iUE%8>vRb$++zukEg}cJ{ndoZa`{7;?SuK1&{1il1 z3qJ@Cfyip%hhc}U+^Vu#_^LC�?$Qje_xyh1p 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 VZ%&2L)aeReS$kHto&hbL0{~r=Satva literal 956296 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 ^h#&m>c5S2Ws@g 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