From 4afacd7a112d46993ba42ea3ffdfd6d79540fa4b Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Mon, 8 Dec 2014 06:26:10 -0800 Subject: [PATCH 01/23] Adding Desktop Experience feature --- .../RemoteDesktopServicesProxy.cs | 2328 ++++++++--------- .../RemoteDesktopServicesController.cs | 53 +- .../esRemoteDesktopServices.asmx.cs | 6 + .../IRemoteDesktopServices.cs | 2 + .../Windows2012.cs | 118 +- .../RemoteDesktopServicesProxy.cs | 52 + .../RemoteDesktopServices.asmx.cs | 16 + 7 files changed, 1224 insertions(+), 1351 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/RemoteDesktopServicesProxy.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/RemoteDesktopServicesProxy.cs index d2deb586..2bad8a81 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/RemoteDesktopServicesProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/RemoteDesktopServicesProxy.cs @@ -1,35 +1,7 @@ -// Copyright (c) 2014, 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.6400 +// Runtime Version:2.0.50727.7905 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -39,2428 +11,2178 @@ // // This source code was auto-generated by wsdl, Version=2.0.50727.3038. // - -using WebsitePanel.Providers.Common; -using WebsitePanel.Providers.HostedSolution; -using WebsitePanel.Providers.RemoteDesktopServices; - namespace WebsitePanel.EnterpriseServer { - using System; - using System.ComponentModel; - using System.Diagnostics; - using System.Web.Services; - using System.Web.Services.Protocols; using System.Xml.Serialization; + using System.Web.Services; + using System.ComponentModel; + using System.Web.Services.Protocols; + using System; + using System.Diagnostics; + using WebsitePanel.Providers.Common; + using WebsitePanel.Providers.RemoteDesktopServices; + using WebsitePanel.Providers.HostedSolution; + + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - [System.Web.Services.WebServiceBindingAttribute(Name = "esRemoteDesktopServicesSoap", Namespace = "http://smbsaas/websitepanel/enterpriseserver")] - public partial class esRemoteDesktopServices : Microsoft.Web.Services3.WebServicesClientProtocol - { - + [System.Web.Services.WebServiceBindingAttribute(Name="esRemoteDesktopServicesSoap", Namespace="http://smbsaas/websitepanel/enterpriseserver")] + public partial class esRemoteDesktopServices : Microsoft.Web.Services3.WebServicesClientProtocol { + private System.Threading.SendOrPostCallback GetRdsCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback GetOrganizationRdsCollectionsOperationCompleted; - + private System.Threading.SendOrPostCallback AddRdsCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback GetRdsCollectionsPagedOperationCompleted; - + private System.Threading.SendOrPostCallback RemoveRdsCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback GetRdsServersPagedOperationCompleted; - + private System.Threading.SendOrPostCallback GetFreeRdsServersPagedOperationCompleted; - + private System.Threading.SendOrPostCallback GetOrganizationRdsServersPagedOperationCompleted; - + private System.Threading.SendOrPostCallback GetOrganizationFreeRdsServersPagedOperationCompleted; - + private System.Threading.SendOrPostCallback GetRdsServerOperationCompleted; - + + private System.Threading.SendOrPostCallback SetRDServerNewConnectionAllowedOperationCompleted; + private System.Threading.SendOrPostCallback GetCollectionRdsServersOperationCompleted; - + private System.Threading.SendOrPostCallback GetOrganizationRdsServersOperationCompleted; - + private System.Threading.SendOrPostCallback AddRdsServerOperationCompleted; - + private System.Threading.SendOrPostCallback AddRdsServerToCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback AddRdsServerToOrganizationOperationCompleted; - + private System.Threading.SendOrPostCallback RemoveRdsServerOperationCompleted; - + private System.Threading.SendOrPostCallback RemoveRdsServerFromCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback RemoveRdsServerFromOrganizationOperationCompleted; - + private System.Threading.SendOrPostCallback UpdateRdsServerOperationCompleted; - + private System.Threading.SendOrPostCallback GetRdsCollectionUsersOperationCompleted; - + private System.Threading.SendOrPostCallback SetUsersToRdsCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback GetCollectionRemoteApplicationsOperationCompleted; - + private System.Threading.SendOrPostCallback GetAvailableRemoteApplicationsOperationCompleted; - + private System.Threading.SendOrPostCallback AddRemoteApplicationToCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback RemoveRemoteApplicationFromCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback SetRemoteApplicationsToRdsCollectionOperationCompleted; - + private System.Threading.SendOrPostCallback GetOrganizationRdsUsersCountOperationCompleted; - + /// - public esRemoteDesktopServices() - { + public esRemoteDesktopServices() { this.Url = "http://localhost:9002/esRemoteDesktopServices.asmx"; } - + /// public event GetRdsCollectionCompletedEventHandler GetRdsCollectionCompleted; - + /// public event GetOrganizationRdsCollectionsCompletedEventHandler GetOrganizationRdsCollectionsCompleted; - + /// public event AddRdsCollectionCompletedEventHandler AddRdsCollectionCompleted; - + /// public event GetRdsCollectionsPagedCompletedEventHandler GetRdsCollectionsPagedCompleted; - + /// public event RemoveRdsCollectionCompletedEventHandler RemoveRdsCollectionCompleted; - + /// public event GetRdsServersPagedCompletedEventHandler GetRdsServersPagedCompleted; - + /// public event GetFreeRdsServersPagedCompletedEventHandler GetFreeRdsServersPagedCompleted; - + /// public event GetOrganizationRdsServersPagedCompletedEventHandler GetOrganizationRdsServersPagedCompleted; - + /// public event GetOrganizationFreeRdsServersPagedCompletedEventHandler GetOrganizationFreeRdsServersPagedCompleted; - + /// public event GetRdsServerCompletedEventHandler GetRdsServerCompleted; - + + /// + public event SetRDServerNewConnectionAllowedCompletedEventHandler SetRDServerNewConnectionAllowedCompleted; + /// public event GetCollectionRdsServersCompletedEventHandler GetCollectionRdsServersCompleted; - + /// public event GetOrganizationRdsServersCompletedEventHandler GetOrganizationRdsServersCompleted; - + /// public event AddRdsServerCompletedEventHandler AddRdsServerCompleted; - + /// public event AddRdsServerToCollectionCompletedEventHandler AddRdsServerToCollectionCompleted; - + /// public event AddRdsServerToOrganizationCompletedEventHandler AddRdsServerToOrganizationCompleted; - + /// public event RemoveRdsServerCompletedEventHandler RemoveRdsServerCompleted; - + /// public event RemoveRdsServerFromCollectionCompletedEventHandler RemoveRdsServerFromCollectionCompleted; - + /// public event RemoveRdsServerFromOrganizationCompletedEventHandler RemoveRdsServerFromOrganizationCompleted; - + /// public event UpdateRdsServerCompletedEventHandler UpdateRdsServerCompleted; - + /// public event GetRdsCollectionUsersCompletedEventHandler GetRdsCollectionUsersCompleted; - + /// public event SetUsersToRdsCollectionCompletedEventHandler SetUsersToRdsCollectionCompleted; - + /// public event GetCollectionRemoteApplicationsCompletedEventHandler GetCollectionRemoteApplicationsCompleted; - + /// public event GetAvailableRemoteApplicationsCompletedEventHandler GetAvailableRemoteApplicationsCompleted; - + /// public event AddRemoteApplicationToCollectionCompletedEventHandler AddRemoteApplicationToCollectionCompleted; - + /// public event RemoveRemoteApplicationFromCollectionCompletedEventHandler RemoveRemoteApplicationFromCollectionCompleted; - + /// public event SetRemoteApplicationsToRdsCollectionCompletedEventHandler SetRemoteApplicationsToRdsCollectionCompleted; - + /// public event GetOrganizationRdsUsersCountCompletedEventHandler GetOrganizationRdsUsersCountCompleted; - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsCollection", 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 RdsCollection GetRdsCollection(int collectionId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsCollection", 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 RdsCollection GetRdsCollection(int collectionId) { object[] results = this.Invoke("GetRdsCollection", new object[] { - collectionId}); + collectionId}); return ((RdsCollection)(results[0])); } - + /// - public System.IAsyncResult BeginGetRdsCollection(int collectionId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetRdsCollection(int collectionId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetRdsCollection", new object[] { - collectionId}, callback, asyncState); + collectionId}, callback, asyncState); } - + /// - public RdsCollection EndGetRdsCollection(System.IAsyncResult asyncResult) - { + public RdsCollection EndGetRdsCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsCollection)(results[0])); } - + /// - public void GetRdsCollectionAsync(int collectionId) - { + public void GetRdsCollectionAsync(int collectionId) { this.GetRdsCollectionAsync(collectionId, null); } - + /// - public void GetRdsCollectionAsync(int collectionId, object userState) - { - if ((this.GetRdsCollectionOperationCompleted == null)) - { + public void GetRdsCollectionAsync(int collectionId, object userState) { + if ((this.GetRdsCollectionOperationCompleted == null)) { this.GetRdsCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetRdsCollectionOperationCompleted); } this.InvokeAsync("GetRdsCollection", new object[] { - collectionId}, this.GetRdsCollectionOperationCompleted, userState); + collectionId}, this.GetRdsCollectionOperationCompleted, userState); } - - private void OnGetRdsCollectionOperationCompleted(object arg) - { - if ((this.GetRdsCollectionCompleted != null)) - { + + private void OnGetRdsCollectionOperationCompleted(object arg) { + if ((this.GetRdsCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetRdsCollectionCompleted(this, new GetRdsCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsCollections", 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 RdsCollection[] GetOrganizationRdsCollections(int itemId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsCollections", 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 RdsCollection[] GetOrganizationRdsCollections(int itemId) { object[] results = this.Invoke("GetOrganizationRdsCollections", new object[] { - itemId}); + itemId}); return ((RdsCollection[])(results[0])); } - + /// - public System.IAsyncResult BeginGetOrganizationRdsCollections(int itemId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetOrganizationRdsCollections(int itemId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetOrganizationRdsCollections", new object[] { - itemId}, callback, asyncState); + itemId}, callback, asyncState); } - + /// - public RdsCollection[] EndGetOrganizationRdsCollections(System.IAsyncResult asyncResult) - { + public RdsCollection[] EndGetOrganizationRdsCollections(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsCollection[])(results[0])); } - + /// - public void GetOrganizationRdsCollectionsAsync(int itemId) - { + public void GetOrganizationRdsCollectionsAsync(int itemId) { this.GetOrganizationRdsCollectionsAsync(itemId, null); } - + /// - public void GetOrganizationRdsCollectionsAsync(int itemId, object userState) - { - if ((this.GetOrganizationRdsCollectionsOperationCompleted == null)) - { + public void GetOrganizationRdsCollectionsAsync(int itemId, object userState) { + if ((this.GetOrganizationRdsCollectionsOperationCompleted == null)) { this.GetOrganizationRdsCollectionsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationRdsCollectionsOperationCompleted); } this.InvokeAsync("GetOrganizationRdsCollections", new object[] { - itemId}, this.GetOrganizationRdsCollectionsOperationCompleted, userState); + itemId}, this.GetOrganizationRdsCollectionsOperationCompleted, userState); } - - private void OnGetOrganizationRdsCollectionsOperationCompleted(object arg) - { - if ((this.GetOrganizationRdsCollectionsCompleted != null)) - { + + private void OnGetOrganizationRdsCollectionsOperationCompleted(object arg) { + if ((this.GetOrganizationRdsCollectionsCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetOrganizationRdsCollectionsCompleted(this, new GetOrganizationRdsCollectionsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRdsCollection", 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 ResultObject AddRdsCollection(int itemId, RdsCollection collection) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRdsCollection", 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 ResultObject AddRdsCollection(int itemId, RdsCollection collection) { object[] results = this.Invoke("AddRdsCollection", new object[] { - itemId, - collection}); + itemId, + collection}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginAddRdsCollection(int itemId, RdsCollection collection, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginAddRdsCollection(int itemId, RdsCollection collection, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("AddRdsCollection", new object[] { - itemId, - collection}, callback, asyncState); + itemId, + collection}, callback, asyncState); } - + /// - public ResultObject EndAddRdsCollection(System.IAsyncResult asyncResult) - { + public ResultObject EndAddRdsCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void AddRdsCollectionAsync(int itemId, RdsCollection collection) - { + public void AddRdsCollectionAsync(int itemId, RdsCollection collection) { this.AddRdsCollectionAsync(itemId, collection, null); } - + /// - public void AddRdsCollectionAsync(int itemId, RdsCollection collection, object userState) - { - if ((this.AddRdsCollectionOperationCompleted == null)) - { + public void AddRdsCollectionAsync(int itemId, RdsCollection collection, object userState) { + if ((this.AddRdsCollectionOperationCompleted == null)) { this.AddRdsCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddRdsCollectionOperationCompleted); } this.InvokeAsync("AddRdsCollection", new object[] { - itemId, - collection}, this.AddRdsCollectionOperationCompleted, userState); + itemId, + collection}, this.AddRdsCollectionOperationCompleted, userState); } - - private void OnAddRdsCollectionOperationCompleted(object arg) - { - if ((this.AddRdsCollectionCompleted != null)) - { + + private void OnAddRdsCollectionOperationCompleted(object arg) { + if ((this.AddRdsCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.AddRdsCollectionCompleted(this, new AddRdsCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsCollectionsPaged", 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 RdsCollectionPaged GetRdsCollectionsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsCollectionsPaged", 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 RdsCollectionPaged GetRdsCollectionsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { object[] results = this.Invoke("GetRdsCollectionsPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}); return ((RdsCollectionPaged)(results[0])); } - + /// - public System.IAsyncResult BeginGetRdsCollectionsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetRdsCollectionsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetRdsCollectionsPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, callback, asyncState); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, callback, asyncState); } - + /// - public RdsCollectionPaged EndGetRdsCollectionsPaged(System.IAsyncResult asyncResult) - { + public RdsCollectionPaged EndGetRdsCollectionsPaged(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsCollectionPaged)(results[0])); } - + /// - public void GetRdsCollectionsPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + public void GetRdsCollectionsPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { this.GetRdsCollectionsPagedAsync(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows, null); } - + /// - public void GetRdsCollectionsPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) - { - if ((this.GetRdsCollectionsPagedOperationCompleted == null)) - { + public void GetRdsCollectionsPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) { + if ((this.GetRdsCollectionsPagedOperationCompleted == null)) { this.GetRdsCollectionsPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetRdsCollectionsPagedOperationCompleted); } this.InvokeAsync("GetRdsCollectionsPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, this.GetRdsCollectionsPagedOperationCompleted, userState); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, this.GetRdsCollectionsPagedOperationCompleted, userState); } - - private void OnGetRdsCollectionsPagedOperationCompleted(object arg) - { - if ((this.GetRdsCollectionsPagedCompleted != null)) - { + + private void OnGetRdsCollectionsPagedOperationCompleted(object arg) { + if ((this.GetRdsCollectionsPagedCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetRdsCollectionsPagedCompleted(this, new GetRdsCollectionsPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRdsCollection", 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 ResultObject RemoveRdsCollection(int itemId, RdsCollection collection) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRdsCollection", 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 ResultObject RemoveRdsCollection(int itemId, RdsCollection collection) { object[] results = this.Invoke("RemoveRdsCollection", new object[] { - itemId, - collection}); + itemId, + collection}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginRemoveRdsCollection(int itemId, RdsCollection collection, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginRemoveRdsCollection(int itemId, RdsCollection collection, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("RemoveRdsCollection", new object[] { - itemId, - collection}, callback, asyncState); + itemId, + collection}, callback, asyncState); } - + /// - public ResultObject EndRemoveRdsCollection(System.IAsyncResult asyncResult) - { + public ResultObject EndRemoveRdsCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void RemoveRdsCollectionAsync(int itemId, RdsCollection collection) - { + public void RemoveRdsCollectionAsync(int itemId, RdsCollection collection) { this.RemoveRdsCollectionAsync(itemId, collection, null); } - + /// - public void RemoveRdsCollectionAsync(int itemId, RdsCollection collection, object userState) - { - if ((this.RemoveRdsCollectionOperationCompleted == null)) - { + public void RemoveRdsCollectionAsync(int itemId, RdsCollection collection, object userState) { + if ((this.RemoveRdsCollectionOperationCompleted == null)) { this.RemoveRdsCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRemoveRdsCollectionOperationCompleted); } this.InvokeAsync("RemoveRdsCollection", new object[] { - itemId, - collection}, this.RemoveRdsCollectionOperationCompleted, userState); + itemId, + collection}, this.RemoveRdsCollectionOperationCompleted, userState); } - - private void OnRemoveRdsCollectionOperationCompleted(object arg) - { - if ((this.RemoveRdsCollectionCompleted != null)) - { + + private void OnRemoveRdsCollectionOperationCompleted(object arg) { + if ((this.RemoveRdsCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.RemoveRdsCollectionCompleted(this, new RemoveRdsCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsServersPaged", 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 RdsServersPaged GetRdsServersPaged(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsServersPaged", 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 RdsServersPaged GetRdsServersPaged(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { object[] results = this.Invoke("GetRdsServersPaged", new object[] { - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}); + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}); return ((RdsServersPaged)(results[0])); } - + /// - public System.IAsyncResult BeginGetRdsServersPaged(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetRdsServersPaged(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetRdsServersPaged", new object[] { - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, callback, asyncState); + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, callback, asyncState); } - + /// - public RdsServersPaged EndGetRdsServersPaged(System.IAsyncResult asyncResult) - { + public RdsServersPaged EndGetRdsServersPaged(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsServersPaged)(results[0])); } - + /// - public void GetRdsServersPagedAsync(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + public void GetRdsServersPagedAsync(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { this.GetRdsServersPagedAsync(filterColumn, filterValue, sortColumn, startRow, maximumRows, null); } - + /// - public void GetRdsServersPagedAsync(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) - { - if ((this.GetRdsServersPagedOperationCompleted == null)) - { + public void GetRdsServersPagedAsync(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) { + if ((this.GetRdsServersPagedOperationCompleted == null)) { this.GetRdsServersPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetRdsServersPagedOperationCompleted); } this.InvokeAsync("GetRdsServersPaged", new object[] { - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, this.GetRdsServersPagedOperationCompleted, userState); + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, this.GetRdsServersPagedOperationCompleted, userState); } - - private void OnGetRdsServersPagedOperationCompleted(object arg) - { - if ((this.GetRdsServersPagedCompleted != null)) - { + + private void OnGetRdsServersPagedOperationCompleted(object arg) { + if ((this.GetRdsServersPagedCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetRdsServersPagedCompleted(this, new GetRdsServersPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetFreeRdsServersPaged", 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 RdsServersPaged GetFreeRdsServersPaged(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetFreeRdsServersPaged", 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 RdsServersPaged GetFreeRdsServersPaged(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { object[] results = this.Invoke("GetFreeRdsServersPaged", new object[] { - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}); + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}); return ((RdsServersPaged)(results[0])); } - + /// - public System.IAsyncResult BeginGetFreeRdsServersPaged(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetFreeRdsServersPaged(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetFreeRdsServersPaged", new object[] { - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, callback, asyncState); + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, callback, asyncState); } - + /// - public RdsServersPaged EndGetFreeRdsServersPaged(System.IAsyncResult asyncResult) - { + public RdsServersPaged EndGetFreeRdsServersPaged(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsServersPaged)(results[0])); } - + /// - public void GetFreeRdsServersPagedAsync(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + public void GetFreeRdsServersPagedAsync(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { this.GetFreeRdsServersPagedAsync(filterColumn, filterValue, sortColumn, startRow, maximumRows, null); } - + /// - public void GetFreeRdsServersPagedAsync(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) - { - if ((this.GetFreeRdsServersPagedOperationCompleted == null)) - { + public void GetFreeRdsServersPagedAsync(string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) { + if ((this.GetFreeRdsServersPagedOperationCompleted == null)) { this.GetFreeRdsServersPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetFreeRdsServersPagedOperationCompleted); } this.InvokeAsync("GetFreeRdsServersPaged", new object[] { - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, this.GetFreeRdsServersPagedOperationCompleted, userState); + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, this.GetFreeRdsServersPagedOperationCompleted, userState); } - - private void OnGetFreeRdsServersPagedOperationCompleted(object arg) - { - if ((this.GetFreeRdsServersPagedCompleted != null)) - { + + private void OnGetFreeRdsServersPagedOperationCompleted(object arg) { + if ((this.GetFreeRdsServersPagedCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetFreeRdsServersPagedCompleted(this, new GetFreeRdsServersPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsServersPaged", 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 RdsServersPaged GetOrganizationRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsServersPaged", 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 RdsServersPaged GetOrganizationRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { object[] results = this.Invoke("GetOrganizationRdsServersPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}); return ((RdsServersPaged)(results[0])); } - + /// - public System.IAsyncResult BeginGetOrganizationRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetOrganizationRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetOrganizationRdsServersPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, callback, asyncState); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, callback, asyncState); } - + /// - public RdsServersPaged EndGetOrganizationRdsServersPaged(System.IAsyncResult asyncResult) - { + public RdsServersPaged EndGetOrganizationRdsServersPaged(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsServersPaged)(results[0])); } - + /// - public void GetOrganizationRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + public void GetOrganizationRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { this.GetOrganizationRdsServersPagedAsync(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows, null); } - + /// - public void GetOrganizationRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) - { - if ((this.GetOrganizationRdsServersPagedOperationCompleted == null)) - { + public void GetOrganizationRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) { + if ((this.GetOrganizationRdsServersPagedOperationCompleted == null)) { this.GetOrganizationRdsServersPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationRdsServersPagedOperationCompleted); } this.InvokeAsync("GetOrganizationRdsServersPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, this.GetOrganizationRdsServersPagedOperationCompleted, userState); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, this.GetOrganizationRdsServersPagedOperationCompleted, userState); } - - private void OnGetOrganizationRdsServersPagedOperationCompleted(object arg) - { - if ((this.GetOrganizationRdsServersPagedCompleted != null)) - { + + private void OnGetOrganizationRdsServersPagedOperationCompleted(object arg) { + if ((this.GetOrganizationRdsServersPagedCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetOrganizationRdsServersPagedCompleted(this, new GetOrganizationRdsServersPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationFreeRdsServersPaged", 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 RdsServersPaged GetOrganizationFreeRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationFreeRdsServersPaged", 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 RdsServersPaged GetOrganizationFreeRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { object[] results = this.Invoke("GetOrganizationFreeRdsServersPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}); return ((RdsServersPaged)(results[0])); } - + /// - public System.IAsyncResult BeginGetOrganizationFreeRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetOrganizationFreeRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetOrganizationFreeRdsServersPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, callback, asyncState); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, callback, asyncState); } - + /// - public RdsServersPaged EndGetOrganizationFreeRdsServersPaged(System.IAsyncResult asyncResult) - { + public RdsServersPaged EndGetOrganizationFreeRdsServersPaged(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsServersPaged)(results[0])); } - + /// - public void GetOrganizationFreeRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) - { + public void GetOrganizationFreeRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { this.GetOrganizationFreeRdsServersPagedAsync(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows, null); } - + /// - public void GetOrganizationFreeRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) - { - if ((this.GetOrganizationFreeRdsServersPagedOperationCompleted == null)) - { + public void GetOrganizationFreeRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) { + if ((this.GetOrganizationFreeRdsServersPagedOperationCompleted == null)) { this.GetOrganizationFreeRdsServersPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationFreeRdsServersPagedOperationCompleted); } this.InvokeAsync("GetOrganizationFreeRdsServersPaged", new object[] { - itemId, - filterColumn, - filterValue, - sortColumn, - startRow, - maximumRows}, this.GetOrganizationFreeRdsServersPagedOperationCompleted, userState); + itemId, + filterColumn, + filterValue, + sortColumn, + startRow, + maximumRows}, this.GetOrganizationFreeRdsServersPagedOperationCompleted, userState); } - - private void OnGetOrganizationFreeRdsServersPagedOperationCompleted(object arg) - { - if ((this.GetOrganizationFreeRdsServersPagedCompleted != null)) - { + + private void OnGetOrganizationFreeRdsServersPagedOperationCompleted(object arg) { + if ((this.GetOrganizationFreeRdsServersPagedCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetOrganizationFreeRdsServersPagedCompleted(this, new GetOrganizationFreeRdsServersPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsServer", 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 RdsServer GetRdsServer(int rdsSeverId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsServer", 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 RdsServer GetRdsServer(int rdsSeverId) { object[] results = this.Invoke("GetRdsServer", new object[] { - rdsSeverId}); + rdsSeverId}); return ((RdsServer)(results[0])); } - + /// - public System.IAsyncResult BeginGetRdsServer(int rdsSeverId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetRdsServer(int rdsSeverId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetRdsServer", new object[] { - rdsSeverId}, callback, asyncState); + rdsSeverId}, callback, asyncState); } - + /// - public RdsServer EndGetRdsServer(System.IAsyncResult asyncResult) - { + public RdsServer EndGetRdsServer(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsServer)(results[0])); } - + /// - public void GetRdsServerAsync(int rdsSeverId) - { + public void GetRdsServerAsync(int rdsSeverId) { this.GetRdsServerAsync(rdsSeverId, null); } - + /// - public void GetRdsServerAsync(int rdsSeverId, object userState) - { - if ((this.GetRdsServerOperationCompleted == null)) - { + public void GetRdsServerAsync(int rdsSeverId, object userState) { + if ((this.GetRdsServerOperationCompleted == null)) { this.GetRdsServerOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetRdsServerOperationCompleted); } this.InvokeAsync("GetRdsServer", new object[] { - rdsSeverId}, this.GetRdsServerOperationCompleted, userState); + rdsSeverId}, this.GetRdsServerOperationCompleted, userState); } - - private void OnGetRdsServerOperationCompleted(object arg) - { - if ((this.GetRdsServerCompleted != null)) - { + + private void OnGetRdsServerOperationCompleted(object arg) { + if ((this.GetRdsServerCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetRdsServerCompleted(this, new GetRdsServerCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetCollectionRdsServers", 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 RdsServer[] GetCollectionRdsServers(int collectionId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/SetRDServerNewConnectionAllowed", 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 ResultObject SetRDServerNewConnectionAllowed(int itemId, bool newConnectionAllowed, int rdsSeverId) { + object[] results = this.Invoke("SetRDServerNewConnectionAllowed", new object[] { + itemId, + newConnectionAllowed, + rdsSeverId}); + return ((ResultObject)(results[0])); + } + + /// + public System.IAsyncResult BeginSetRDServerNewConnectionAllowed(int itemId, bool newConnectionAllowed, int rdsSeverId, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("SetRDServerNewConnectionAllowed", new object[] { + itemId, + newConnectionAllowed, + rdsSeverId}, callback, asyncState); + } + + /// + public ResultObject EndSetRDServerNewConnectionAllowed(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((ResultObject)(results[0])); + } + + /// + public void SetRDServerNewConnectionAllowedAsync(int itemId, bool newConnectionAllowed, int rdsSeverId) { + this.SetRDServerNewConnectionAllowedAsync(itemId, newConnectionAllowed, rdsSeverId, null); + } + + /// + public void SetRDServerNewConnectionAllowedAsync(int itemId, bool newConnectionAllowed, int rdsSeverId, object userState) { + if ((this.SetRDServerNewConnectionAllowedOperationCompleted == null)) { + this.SetRDServerNewConnectionAllowedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetRDServerNewConnectionAllowedOperationCompleted); + } + this.InvokeAsync("SetRDServerNewConnectionAllowed", new object[] { + itemId, + newConnectionAllowed, + rdsSeverId}, this.SetRDServerNewConnectionAllowedOperationCompleted, userState); + } + + private void OnSetRDServerNewConnectionAllowedOperationCompleted(object arg) { + if ((this.SetRDServerNewConnectionAllowedCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.SetRDServerNewConnectionAllowedCompleted(this, new SetRDServerNewConnectionAllowedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetCollectionRdsServers", 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 RdsServer[] GetCollectionRdsServers(int collectionId) { object[] results = this.Invoke("GetCollectionRdsServers", new object[] { - collectionId}); + collectionId}); return ((RdsServer[])(results[0])); } - + /// - public System.IAsyncResult BeginGetCollectionRdsServers(int collectionId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetCollectionRdsServers(int collectionId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetCollectionRdsServers", new object[] { - collectionId}, callback, asyncState); + collectionId}, callback, asyncState); } - + /// - public RdsServer[] EndGetCollectionRdsServers(System.IAsyncResult asyncResult) - { + public RdsServer[] EndGetCollectionRdsServers(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsServer[])(results[0])); } - + /// - public void GetCollectionRdsServersAsync(int collectionId) - { + public void GetCollectionRdsServersAsync(int collectionId) { this.GetCollectionRdsServersAsync(collectionId, null); } - + /// - public void GetCollectionRdsServersAsync(int collectionId, object userState) - { - if ((this.GetCollectionRdsServersOperationCompleted == null)) - { + public void GetCollectionRdsServersAsync(int collectionId, object userState) { + if ((this.GetCollectionRdsServersOperationCompleted == null)) { this.GetCollectionRdsServersOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetCollectionRdsServersOperationCompleted); } this.InvokeAsync("GetCollectionRdsServers", new object[] { - collectionId}, this.GetCollectionRdsServersOperationCompleted, userState); + collectionId}, this.GetCollectionRdsServersOperationCompleted, userState); } - - private void OnGetCollectionRdsServersOperationCompleted(object arg) - { - if ((this.GetCollectionRdsServersCompleted != null)) - { + + private void OnGetCollectionRdsServersOperationCompleted(object arg) { + if ((this.GetCollectionRdsServersCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetCollectionRdsServersCompleted(this, new GetCollectionRdsServersCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsServers", 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 RdsServer[] GetOrganizationRdsServers(int itemId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsServers", 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 RdsServer[] GetOrganizationRdsServers(int itemId) { object[] results = this.Invoke("GetOrganizationRdsServers", new object[] { - itemId}); + itemId}); return ((RdsServer[])(results[0])); } - + /// - public System.IAsyncResult BeginGetOrganizationRdsServers(int itemId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetOrganizationRdsServers(int itemId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetOrganizationRdsServers", new object[] { - itemId}, callback, asyncState); + itemId}, callback, asyncState); } - + /// - public RdsServer[] EndGetOrganizationRdsServers(System.IAsyncResult asyncResult) - { + public RdsServer[] EndGetOrganizationRdsServers(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RdsServer[])(results[0])); } - + /// - public void GetOrganizationRdsServersAsync(int itemId) - { + public void GetOrganizationRdsServersAsync(int itemId) { this.GetOrganizationRdsServersAsync(itemId, null); } - + /// - public void GetOrganizationRdsServersAsync(int itemId, object userState) - { - if ((this.GetOrganizationRdsServersOperationCompleted == null)) - { + public void GetOrganizationRdsServersAsync(int itemId, object userState) { + if ((this.GetOrganizationRdsServersOperationCompleted == null)) { this.GetOrganizationRdsServersOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationRdsServersOperationCompleted); } this.InvokeAsync("GetOrganizationRdsServers", new object[] { - itemId}, this.GetOrganizationRdsServersOperationCompleted, userState); + itemId}, this.GetOrganizationRdsServersOperationCompleted, userState); } - - private void OnGetOrganizationRdsServersOperationCompleted(object arg) - { - if ((this.GetOrganizationRdsServersCompleted != null)) - { + + private void OnGetOrganizationRdsServersOperationCompleted(object arg) { + if ((this.GetOrganizationRdsServersCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetOrganizationRdsServersCompleted(this, new GetOrganizationRdsServersCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRdsServer", 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 ResultObject AddRdsServer(RdsServer rdsServer) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRdsServer", 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 ResultObject AddRdsServer(RdsServer rdsServer) { object[] results = this.Invoke("AddRdsServer", new object[] { - rdsServer}); + rdsServer}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginAddRdsServer(RdsServer rdsServer, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginAddRdsServer(RdsServer rdsServer, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("AddRdsServer", new object[] { - rdsServer}, callback, asyncState); + rdsServer}, callback, asyncState); } - + /// - public ResultObject EndAddRdsServer(System.IAsyncResult asyncResult) - { + public ResultObject EndAddRdsServer(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void AddRdsServerAsync(RdsServer rdsServer) - { + public void AddRdsServerAsync(RdsServer rdsServer) { this.AddRdsServerAsync(rdsServer, null); } - + /// - public void AddRdsServerAsync(RdsServer rdsServer, object userState) - { - if ((this.AddRdsServerOperationCompleted == null)) - { + public void AddRdsServerAsync(RdsServer rdsServer, object userState) { + if ((this.AddRdsServerOperationCompleted == null)) { this.AddRdsServerOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddRdsServerOperationCompleted); } this.InvokeAsync("AddRdsServer", new object[] { - rdsServer}, this.AddRdsServerOperationCompleted, userState); + rdsServer}, this.AddRdsServerOperationCompleted, userState); } - - private void OnAddRdsServerOperationCompleted(object arg) - { - if ((this.AddRdsServerCompleted != null)) - { + + private void OnAddRdsServerOperationCompleted(object arg) { + if ((this.AddRdsServerCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.AddRdsServerCompleted(this, new AddRdsServerCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRdsServerToCollection", 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 ResultObject AddRdsServerToCollection(int itemId, RdsServer rdsServer, RdsCollection rdsCollection) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRdsServerToCollection", 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 ResultObject AddRdsServerToCollection(int itemId, RdsServer rdsServer, RdsCollection rdsCollection) { object[] results = this.Invoke("AddRdsServerToCollection", new object[] { - itemId, - rdsServer, - rdsCollection}); + itemId, + rdsServer, + rdsCollection}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginAddRdsServerToCollection(int itemId, RdsServer rdsServer, RdsCollection rdsCollection, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginAddRdsServerToCollection(int itemId, RdsServer rdsServer, RdsCollection rdsCollection, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("AddRdsServerToCollection", new object[] { - itemId, - rdsServer, - rdsCollection}, callback, asyncState); + itemId, + rdsServer, + rdsCollection}, callback, asyncState); } - + /// - public ResultObject EndAddRdsServerToCollection(System.IAsyncResult asyncResult) - { + public ResultObject EndAddRdsServerToCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void AddRdsServerToCollectionAsync(int itemId, RdsServer rdsServer, RdsCollection rdsCollection) - { + public void AddRdsServerToCollectionAsync(int itemId, RdsServer rdsServer, RdsCollection rdsCollection) { this.AddRdsServerToCollectionAsync(itemId, rdsServer, rdsCollection, null); } - + /// - public void AddRdsServerToCollectionAsync(int itemId, RdsServer rdsServer, RdsCollection rdsCollection, object userState) - { - if ((this.AddRdsServerToCollectionOperationCompleted == null)) - { + public void AddRdsServerToCollectionAsync(int itemId, RdsServer rdsServer, RdsCollection rdsCollection, object userState) { + if ((this.AddRdsServerToCollectionOperationCompleted == null)) { this.AddRdsServerToCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddRdsServerToCollectionOperationCompleted); } this.InvokeAsync("AddRdsServerToCollection", new object[] { - itemId, - rdsServer, - rdsCollection}, this.AddRdsServerToCollectionOperationCompleted, userState); + itemId, + rdsServer, + rdsCollection}, this.AddRdsServerToCollectionOperationCompleted, userState); } - - private void OnAddRdsServerToCollectionOperationCompleted(object arg) - { - if ((this.AddRdsServerToCollectionCompleted != null)) - { + + private void OnAddRdsServerToCollectionOperationCompleted(object arg) { + if ((this.AddRdsServerToCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.AddRdsServerToCollectionCompleted(this, new AddRdsServerToCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRdsServerToOrganization", 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 ResultObject AddRdsServerToOrganization(int itemId, int serverId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRdsServerToOrganization", 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 ResultObject AddRdsServerToOrganization(int itemId, int serverId) { object[] results = this.Invoke("AddRdsServerToOrganization", new object[] { - itemId, - serverId}); + itemId, + serverId}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginAddRdsServerToOrganization(int itemId, int serverId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginAddRdsServerToOrganization(int itemId, int serverId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("AddRdsServerToOrganization", new object[] { - itemId, - serverId}, callback, asyncState); + itemId, + serverId}, callback, asyncState); } - + /// - public ResultObject EndAddRdsServerToOrganization(System.IAsyncResult asyncResult) - { + public ResultObject EndAddRdsServerToOrganization(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void AddRdsServerToOrganizationAsync(int itemId, int serverId) - { + public void AddRdsServerToOrganizationAsync(int itemId, int serverId) { this.AddRdsServerToOrganizationAsync(itemId, serverId, null); } - + /// - public void AddRdsServerToOrganizationAsync(int itemId, int serverId, object userState) - { - if ((this.AddRdsServerToOrganizationOperationCompleted == null)) - { + public void AddRdsServerToOrganizationAsync(int itemId, int serverId, object userState) { + if ((this.AddRdsServerToOrganizationOperationCompleted == null)) { this.AddRdsServerToOrganizationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddRdsServerToOrganizationOperationCompleted); } this.InvokeAsync("AddRdsServerToOrganization", new object[] { - itemId, - serverId}, this.AddRdsServerToOrganizationOperationCompleted, userState); + itemId, + serverId}, this.AddRdsServerToOrganizationOperationCompleted, userState); } - - private void OnAddRdsServerToOrganizationOperationCompleted(object arg) - { - if ((this.AddRdsServerToOrganizationCompleted != null)) - { + + private void OnAddRdsServerToOrganizationOperationCompleted(object arg) { + if ((this.AddRdsServerToOrganizationCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.AddRdsServerToOrganizationCompleted(this, new AddRdsServerToOrganizationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRdsServer", 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 ResultObject RemoveRdsServer(int rdsServerId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRdsServer", 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 ResultObject RemoveRdsServer(int rdsServerId) { object[] results = this.Invoke("RemoveRdsServer", new object[] { - rdsServerId}); + rdsServerId}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginRemoveRdsServer(int rdsServerId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginRemoveRdsServer(int rdsServerId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("RemoveRdsServer", new object[] { - rdsServerId}, callback, asyncState); + rdsServerId}, callback, asyncState); } - + /// - public ResultObject EndRemoveRdsServer(System.IAsyncResult asyncResult) - { + public ResultObject EndRemoveRdsServer(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void RemoveRdsServerAsync(int rdsServerId) - { + public void RemoveRdsServerAsync(int rdsServerId) { this.RemoveRdsServerAsync(rdsServerId, null); } - + /// - public void RemoveRdsServerAsync(int rdsServerId, object userState) - { - if ((this.RemoveRdsServerOperationCompleted == null)) - { + public void RemoveRdsServerAsync(int rdsServerId, object userState) { + if ((this.RemoveRdsServerOperationCompleted == null)) { this.RemoveRdsServerOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRemoveRdsServerOperationCompleted); } this.InvokeAsync("RemoveRdsServer", new object[] { - rdsServerId}, this.RemoveRdsServerOperationCompleted, userState); + rdsServerId}, this.RemoveRdsServerOperationCompleted, userState); } - - private void OnRemoveRdsServerOperationCompleted(object arg) - { - if ((this.RemoveRdsServerCompleted != null)) - { + + private void OnRemoveRdsServerOperationCompleted(object arg) { + if ((this.RemoveRdsServerCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.RemoveRdsServerCompleted(this, new RemoveRdsServerCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRdsServerFromCollection", 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 ResultObject RemoveRdsServerFromCollection(int itemId, RdsServer rdsServer, RdsCollection rdsCollection) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRdsServerFromCollection", 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 ResultObject RemoveRdsServerFromCollection(int itemId, RdsServer rdsServer, RdsCollection rdsCollection) { object[] results = this.Invoke("RemoveRdsServerFromCollection", new object[] { - itemId, - rdsServer, - rdsCollection}); + itemId, + rdsServer, + rdsCollection}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginRemoveRdsServerFromCollection(int itemId, RdsServer rdsServer, RdsCollection rdsCollection, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginRemoveRdsServerFromCollection(int itemId, RdsServer rdsServer, RdsCollection rdsCollection, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("RemoveRdsServerFromCollection", new object[] { - itemId, - rdsServer, - rdsCollection}, callback, asyncState); + itemId, + rdsServer, + rdsCollection}, callback, asyncState); } - + /// - public ResultObject EndRemoveRdsServerFromCollection(System.IAsyncResult asyncResult) - { + public ResultObject EndRemoveRdsServerFromCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void RemoveRdsServerFromCollectionAsync(int itemId, RdsServer rdsServer, RdsCollection rdsCollection) - { + public void RemoveRdsServerFromCollectionAsync(int itemId, RdsServer rdsServer, RdsCollection rdsCollection) { this.RemoveRdsServerFromCollectionAsync(itemId, rdsServer, rdsCollection, null); } - + /// - public void RemoveRdsServerFromCollectionAsync(int itemId, RdsServer rdsServer, RdsCollection rdsCollection, object userState) - { - if ((this.RemoveRdsServerFromCollectionOperationCompleted == null)) - { + public void RemoveRdsServerFromCollectionAsync(int itemId, RdsServer rdsServer, RdsCollection rdsCollection, object userState) { + if ((this.RemoveRdsServerFromCollectionOperationCompleted == null)) { this.RemoveRdsServerFromCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRemoveRdsServerFromCollectionOperationCompleted); } this.InvokeAsync("RemoveRdsServerFromCollection", new object[] { - itemId, - rdsServer, - rdsCollection}, this.RemoveRdsServerFromCollectionOperationCompleted, userState); + itemId, + rdsServer, + rdsCollection}, this.RemoveRdsServerFromCollectionOperationCompleted, userState); } - - private void OnRemoveRdsServerFromCollectionOperationCompleted(object arg) - { - if ((this.RemoveRdsServerFromCollectionCompleted != null)) - { + + private void OnRemoveRdsServerFromCollectionOperationCompleted(object arg) { + if ((this.RemoveRdsServerFromCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.RemoveRdsServerFromCollectionCompleted(this, new RemoveRdsServerFromCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRdsServerFromOrganization", 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 ResultObject RemoveRdsServerFromOrganization(int rdsServerId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRdsServerFromOrganization", 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 ResultObject RemoveRdsServerFromOrganization(int rdsServerId) { object[] results = this.Invoke("RemoveRdsServerFromOrganization", new object[] { - rdsServerId}); + rdsServerId}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginRemoveRdsServerFromOrganization(int rdsServerId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginRemoveRdsServerFromOrganization(int rdsServerId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("RemoveRdsServerFromOrganization", new object[] { - rdsServerId}, callback, asyncState); + rdsServerId}, callback, asyncState); } - + /// - public ResultObject EndRemoveRdsServerFromOrganization(System.IAsyncResult asyncResult) - { + public ResultObject EndRemoveRdsServerFromOrganization(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void RemoveRdsServerFromOrganizationAsync(int rdsServerId) - { + public void RemoveRdsServerFromOrganizationAsync(int rdsServerId) { this.RemoveRdsServerFromOrganizationAsync(rdsServerId, null); } - + /// - public void RemoveRdsServerFromOrganizationAsync(int rdsServerId, object userState) - { - if ((this.RemoveRdsServerFromOrganizationOperationCompleted == null)) - { + public void RemoveRdsServerFromOrganizationAsync(int rdsServerId, object userState) { + if ((this.RemoveRdsServerFromOrganizationOperationCompleted == null)) { this.RemoveRdsServerFromOrganizationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRemoveRdsServerFromOrganizationOperationCompleted); } this.InvokeAsync("RemoveRdsServerFromOrganization", new object[] { - rdsServerId}, this.RemoveRdsServerFromOrganizationOperationCompleted, userState); + rdsServerId}, this.RemoveRdsServerFromOrganizationOperationCompleted, userState); } - - private void OnRemoveRdsServerFromOrganizationOperationCompleted(object arg) - { - if ((this.RemoveRdsServerFromOrganizationCompleted != null)) - { + + private void OnRemoveRdsServerFromOrganizationOperationCompleted(object arg) { + if ((this.RemoveRdsServerFromOrganizationCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.RemoveRdsServerFromOrganizationCompleted(this, new RemoveRdsServerFromOrganizationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/UpdateRdsServer", 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 ResultObject UpdateRdsServer(RdsServer rdsServer) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/UpdateRdsServer", 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 ResultObject UpdateRdsServer(RdsServer rdsServer) { object[] results = this.Invoke("UpdateRdsServer", new object[] { - rdsServer}); + rdsServer}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginUpdateRdsServer(RdsServer rdsServer, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginUpdateRdsServer(RdsServer rdsServer, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("UpdateRdsServer", new object[] { - rdsServer}, callback, asyncState); + rdsServer}, callback, asyncState); } - + /// - public ResultObject EndUpdateRdsServer(System.IAsyncResult asyncResult) - { + public ResultObject EndUpdateRdsServer(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void UpdateRdsServerAsync(RdsServer rdsServer) - { + public void UpdateRdsServerAsync(RdsServer rdsServer) { this.UpdateRdsServerAsync(rdsServer, null); } - + /// - public void UpdateRdsServerAsync(RdsServer rdsServer, object userState) - { - if ((this.UpdateRdsServerOperationCompleted == null)) - { + public void UpdateRdsServerAsync(RdsServer rdsServer, object userState) { + if ((this.UpdateRdsServerOperationCompleted == null)) { this.UpdateRdsServerOperationCompleted = new System.Threading.SendOrPostCallback(this.OnUpdateRdsServerOperationCompleted); } this.InvokeAsync("UpdateRdsServer", new object[] { - rdsServer}, this.UpdateRdsServerOperationCompleted, userState); + rdsServer}, this.UpdateRdsServerOperationCompleted, userState); } - - private void OnUpdateRdsServerOperationCompleted(object arg) - { - if ((this.UpdateRdsServerCompleted != null)) - { + + private void OnUpdateRdsServerOperationCompleted(object arg) { + if ((this.UpdateRdsServerCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.UpdateRdsServerCompleted(this, new UpdateRdsServerCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsCollectionUsers", 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 OrganizationUser[] GetRdsCollectionUsers(int collectionId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsCollectionUsers", 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 OrganizationUser[] GetRdsCollectionUsers(int collectionId) { object[] results = this.Invoke("GetRdsCollectionUsers", new object[] { - collectionId}); + collectionId}); return ((OrganizationUser[])(results[0])); } - + /// - public System.IAsyncResult BeginGetRdsCollectionUsers(int collectionId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetRdsCollectionUsers(int collectionId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetRdsCollectionUsers", new object[] { - collectionId}, callback, asyncState); + collectionId}, callback, asyncState); } - + /// - public OrganizationUser[] EndGetRdsCollectionUsers(System.IAsyncResult asyncResult) - { + public OrganizationUser[] EndGetRdsCollectionUsers(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((OrganizationUser[])(results[0])); } - + /// - public void GetRdsCollectionUsersAsync(int collectionId) - { + public void GetRdsCollectionUsersAsync(int collectionId) { this.GetRdsCollectionUsersAsync(collectionId, null); } - + /// - public void GetRdsCollectionUsersAsync(int collectionId, object userState) - { - if ((this.GetRdsCollectionUsersOperationCompleted == null)) - { + public void GetRdsCollectionUsersAsync(int collectionId, object userState) { + if ((this.GetRdsCollectionUsersOperationCompleted == null)) { this.GetRdsCollectionUsersOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetRdsCollectionUsersOperationCompleted); } this.InvokeAsync("GetRdsCollectionUsers", new object[] { - collectionId}, this.GetRdsCollectionUsersOperationCompleted, userState); + collectionId}, this.GetRdsCollectionUsersOperationCompleted, userState); } - - private void OnGetRdsCollectionUsersOperationCompleted(object arg) - { - if ((this.GetRdsCollectionUsersCompleted != null)) - { + + private void OnGetRdsCollectionUsersOperationCompleted(object arg) { + if ((this.GetRdsCollectionUsersCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetRdsCollectionUsersCompleted(this, new GetRdsCollectionUsersCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/SetUsersToRdsCollection", 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 ResultObject SetUsersToRdsCollection(int itemId, int collectionId, OrganizationUser[] users) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/SetUsersToRdsCollection", 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 ResultObject SetUsersToRdsCollection(int itemId, int collectionId, OrganizationUser[] users) { object[] results = this.Invoke("SetUsersToRdsCollection", new object[] { - itemId, - collectionId, - users}); + itemId, + collectionId, + users}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginSetUsersToRdsCollection(int itemId, int collectionId, OrganizationUser[] users, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginSetUsersToRdsCollection(int itemId, int collectionId, OrganizationUser[] users, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("SetUsersToRdsCollection", new object[] { - itemId, - collectionId, - users}, callback, asyncState); + itemId, + collectionId, + users}, callback, asyncState); } - + /// - public ResultObject EndSetUsersToRdsCollection(System.IAsyncResult asyncResult) - { + public ResultObject EndSetUsersToRdsCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void SetUsersToRdsCollectionAsync(int itemId, int collectionId, OrganizationUser[] users) - { + public void SetUsersToRdsCollectionAsync(int itemId, int collectionId, OrganizationUser[] users) { this.SetUsersToRdsCollectionAsync(itemId, collectionId, users, null); } - + /// - public void SetUsersToRdsCollectionAsync(int itemId, int collectionId, OrganizationUser[] users, object userState) - { - if ((this.SetUsersToRdsCollectionOperationCompleted == null)) - { + public void SetUsersToRdsCollectionAsync(int itemId, int collectionId, OrganizationUser[] users, object userState) { + if ((this.SetUsersToRdsCollectionOperationCompleted == null)) { this.SetUsersToRdsCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetUsersToRdsCollectionOperationCompleted); } this.InvokeAsync("SetUsersToRdsCollection", new object[] { - itemId, - collectionId, - users}, this.SetUsersToRdsCollectionOperationCompleted, userState); + itemId, + collectionId, + users}, this.SetUsersToRdsCollectionOperationCompleted, userState); } - - private void OnSetUsersToRdsCollectionOperationCompleted(object arg) - { - if ((this.SetUsersToRdsCollectionCompleted != null)) - { + + private void OnSetUsersToRdsCollectionOperationCompleted(object arg) { + if ((this.SetUsersToRdsCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.SetUsersToRdsCollectionCompleted(this, new SetUsersToRdsCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetCollectionRemoteApplications", 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 RemoteApplication[] GetCollectionRemoteApplications(int itemId, string collectionName) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetCollectionRemoteApplications", 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 RemoteApplication[] GetCollectionRemoteApplications(int itemId, string collectionName) { object[] results = this.Invoke("GetCollectionRemoteApplications", new object[] { - itemId, - collectionName}); + itemId, + collectionName}); return ((RemoteApplication[])(results[0])); } - + /// - public System.IAsyncResult BeginGetCollectionRemoteApplications(int itemId, string collectionName, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetCollectionRemoteApplications(int itemId, string collectionName, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetCollectionRemoteApplications", new object[] { - itemId, - collectionName}, callback, asyncState); + itemId, + collectionName}, callback, asyncState); } - + /// - public RemoteApplication[] EndGetCollectionRemoteApplications(System.IAsyncResult asyncResult) - { + public RemoteApplication[] EndGetCollectionRemoteApplications(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((RemoteApplication[])(results[0])); } - + /// - public void GetCollectionRemoteApplicationsAsync(int itemId, string collectionName) - { + public void GetCollectionRemoteApplicationsAsync(int itemId, string collectionName) { this.GetCollectionRemoteApplicationsAsync(itemId, collectionName, null); } - + /// - public void GetCollectionRemoteApplicationsAsync(int itemId, string collectionName, object userState) - { - if ((this.GetCollectionRemoteApplicationsOperationCompleted == null)) - { + public void GetCollectionRemoteApplicationsAsync(int itemId, string collectionName, object userState) { + if ((this.GetCollectionRemoteApplicationsOperationCompleted == null)) { this.GetCollectionRemoteApplicationsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetCollectionRemoteApplicationsOperationCompleted); } this.InvokeAsync("GetCollectionRemoteApplications", new object[] { - itemId, - collectionName}, this.GetCollectionRemoteApplicationsOperationCompleted, userState); + itemId, + collectionName}, this.GetCollectionRemoteApplicationsOperationCompleted, userState); } - - private void OnGetCollectionRemoteApplicationsOperationCompleted(object arg) - { - if ((this.GetCollectionRemoteApplicationsCompleted != null)) - { + + private void OnGetCollectionRemoteApplicationsOperationCompleted(object arg) { + if ((this.GetCollectionRemoteApplicationsCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetCollectionRemoteApplicationsCompleted(this, new GetCollectionRemoteApplicationsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetAvailableRemoteApplications", 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 StartMenuApp[] GetAvailableRemoteApplications(int itemId, string collectionName) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetAvailableRemoteApplications", 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 StartMenuApp[] GetAvailableRemoteApplications(int itemId, string collectionName) { object[] results = this.Invoke("GetAvailableRemoteApplications", new object[] { - itemId, - collectionName}); + itemId, + collectionName}); return ((StartMenuApp[])(results[0])); } - + /// - public System.IAsyncResult BeginGetAvailableRemoteApplications(int itemId, string collectionName, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetAvailableRemoteApplications(int itemId, string collectionName, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetAvailableRemoteApplications", new object[] { - itemId, - collectionName}, callback, asyncState); + itemId, + collectionName}, callback, asyncState); } - + /// - public StartMenuApp[] EndGetAvailableRemoteApplications(System.IAsyncResult asyncResult) - { + public StartMenuApp[] EndGetAvailableRemoteApplications(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((StartMenuApp[])(results[0])); } - + /// - public void GetAvailableRemoteApplicationsAsync(int itemId, string collectionName) - { + public void GetAvailableRemoteApplicationsAsync(int itemId, string collectionName) { this.GetAvailableRemoteApplicationsAsync(itemId, collectionName, null); } - + /// - public void GetAvailableRemoteApplicationsAsync(int itemId, string collectionName, object userState) - { - if ((this.GetAvailableRemoteApplicationsOperationCompleted == null)) - { + public void GetAvailableRemoteApplicationsAsync(int itemId, string collectionName, object userState) { + if ((this.GetAvailableRemoteApplicationsOperationCompleted == null)) { this.GetAvailableRemoteApplicationsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetAvailableRemoteApplicationsOperationCompleted); } this.InvokeAsync("GetAvailableRemoteApplications", new object[] { - itemId, - collectionName}, this.GetAvailableRemoteApplicationsOperationCompleted, userState); + itemId, + collectionName}, this.GetAvailableRemoteApplicationsOperationCompleted, userState); } - - private void OnGetAvailableRemoteApplicationsOperationCompleted(object arg) - { - if ((this.GetAvailableRemoteApplicationsCompleted != null)) - { + + private void OnGetAvailableRemoteApplicationsOperationCompleted(object arg) { + if ((this.GetAvailableRemoteApplicationsCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetAvailableRemoteApplicationsCompleted(this, new GetAvailableRemoteApplicationsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRemoteApplicationToCollection", 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 ResultObject AddRemoteApplicationToCollection(int itemId, RdsCollection collection, RemoteApplication application) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/AddRemoteApplicationToCollection", 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 ResultObject AddRemoteApplicationToCollection(int itemId, RdsCollection collection, RemoteApplication application) { object[] results = this.Invoke("AddRemoteApplicationToCollection", new object[] { - itemId, - collection, - application}); + itemId, + collection, + application}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginAddRemoteApplicationToCollection(int itemId, RdsCollection collection, RemoteApplication application, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginAddRemoteApplicationToCollection(int itemId, RdsCollection collection, RemoteApplication application, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("AddRemoteApplicationToCollection", new object[] { - itemId, - collection, - application}, callback, asyncState); + itemId, + collection, + application}, callback, asyncState); } - + /// - public ResultObject EndAddRemoteApplicationToCollection(System.IAsyncResult asyncResult) - { + public ResultObject EndAddRemoteApplicationToCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void AddRemoteApplicationToCollectionAsync(int itemId, RdsCollection collection, RemoteApplication application) - { + public void AddRemoteApplicationToCollectionAsync(int itemId, RdsCollection collection, RemoteApplication application) { this.AddRemoteApplicationToCollectionAsync(itemId, collection, application, null); } - + /// - public void AddRemoteApplicationToCollectionAsync(int itemId, RdsCollection collection, RemoteApplication application, object userState) - { - if ((this.AddRemoteApplicationToCollectionOperationCompleted == null)) - { + public void AddRemoteApplicationToCollectionAsync(int itemId, RdsCollection collection, RemoteApplication application, object userState) { + if ((this.AddRemoteApplicationToCollectionOperationCompleted == null)) { this.AddRemoteApplicationToCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddRemoteApplicationToCollectionOperationCompleted); } this.InvokeAsync("AddRemoteApplicationToCollection", new object[] { - itemId, - collection, - application}, this.AddRemoteApplicationToCollectionOperationCompleted, userState); + itemId, + collection, + application}, this.AddRemoteApplicationToCollectionOperationCompleted, userState); } - - private void OnAddRemoteApplicationToCollectionOperationCompleted(object arg) - { - if ((this.AddRemoteApplicationToCollectionCompleted != null)) - { + + private void OnAddRemoteApplicationToCollectionOperationCompleted(object arg) { + if ((this.AddRemoteApplicationToCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.AddRemoteApplicationToCollectionCompleted(this, new AddRemoteApplicationToCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/RemoveRemoteApplicationFromCollectio" + - "n", 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 ResultObject RemoveRemoteApplicationFromCollection(int itemId, RdsCollection collection, RemoteApplication application) - { + "n", 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 ResultObject RemoveRemoteApplicationFromCollection(int itemId, RdsCollection collection, RemoteApplication application) { object[] results = this.Invoke("RemoveRemoteApplicationFromCollection", new object[] { - itemId, - collection, - application}); + itemId, + collection, + application}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginRemoveRemoteApplicationFromCollection(int itemId, RdsCollection collection, RemoteApplication application, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginRemoveRemoteApplicationFromCollection(int itemId, RdsCollection collection, RemoteApplication application, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("RemoveRemoteApplicationFromCollection", new object[] { - itemId, - collection, - application}, callback, asyncState); + itemId, + collection, + application}, callback, asyncState); } - + /// - public ResultObject EndRemoveRemoteApplicationFromCollection(System.IAsyncResult asyncResult) - { + public ResultObject EndRemoveRemoteApplicationFromCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void RemoveRemoteApplicationFromCollectionAsync(int itemId, RdsCollection collection, RemoteApplication application) - { + public void RemoveRemoteApplicationFromCollectionAsync(int itemId, RdsCollection collection, RemoteApplication application) { this.RemoveRemoteApplicationFromCollectionAsync(itemId, collection, application, null); } - + /// - public void RemoveRemoteApplicationFromCollectionAsync(int itemId, RdsCollection collection, RemoteApplication application, object userState) - { - if ((this.RemoveRemoteApplicationFromCollectionOperationCompleted == null)) - { + public void RemoveRemoteApplicationFromCollectionAsync(int itemId, RdsCollection collection, RemoteApplication application, object userState) { + if ((this.RemoveRemoteApplicationFromCollectionOperationCompleted == null)) { this.RemoveRemoteApplicationFromCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRemoveRemoteApplicationFromCollectionOperationCompleted); } this.InvokeAsync("RemoveRemoteApplicationFromCollection", new object[] { - itemId, - collection, - application}, this.RemoveRemoteApplicationFromCollectionOperationCompleted, userState); + itemId, + collection, + application}, this.RemoveRemoteApplicationFromCollectionOperationCompleted, userState); } - - private void OnRemoveRemoteApplicationFromCollectionOperationCompleted(object arg) - { - if ((this.RemoveRemoteApplicationFromCollectionCompleted != null)) - { + + private void OnRemoveRemoteApplicationFromCollectionOperationCompleted(object arg) { + if ((this.RemoveRemoteApplicationFromCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.RemoveRemoteApplicationFromCollectionCompleted(this, new RemoveRemoteApplicationFromCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/SetRemoteApplicationsToRdsCollection" + - "", 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 ResultObject SetRemoteApplicationsToRdsCollection(int itemId, int collectionId, RemoteApplication[] remoteApps) - { + "", 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 ResultObject SetRemoteApplicationsToRdsCollection(int itemId, int collectionId, RemoteApplication[] remoteApps) { object[] results = this.Invoke("SetRemoteApplicationsToRdsCollection", new object[] { - itemId, - collectionId, - remoteApps}); + itemId, + collectionId, + remoteApps}); return ((ResultObject)(results[0])); } - + /// - public System.IAsyncResult BeginSetRemoteApplicationsToRdsCollection(int itemId, int collectionId, RemoteApplication[] remoteApps, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginSetRemoteApplicationsToRdsCollection(int itemId, int collectionId, RemoteApplication[] remoteApps, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("SetRemoteApplicationsToRdsCollection", new object[] { - itemId, - collectionId, - remoteApps}, callback, asyncState); + itemId, + collectionId, + remoteApps}, callback, asyncState); } - + /// - public ResultObject EndSetRemoteApplicationsToRdsCollection(System.IAsyncResult asyncResult) - { + public ResultObject EndSetRemoteApplicationsToRdsCollection(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((ResultObject)(results[0])); } - + /// - public void SetRemoteApplicationsToRdsCollectionAsync(int itemId, int collectionId, RemoteApplication[] remoteApps) - { + public void SetRemoteApplicationsToRdsCollectionAsync(int itemId, int collectionId, RemoteApplication[] remoteApps) { this.SetRemoteApplicationsToRdsCollectionAsync(itemId, collectionId, remoteApps, null); } - + /// - public void SetRemoteApplicationsToRdsCollectionAsync(int itemId, int collectionId, RemoteApplication[] remoteApps, object userState) - { - if ((this.SetRemoteApplicationsToRdsCollectionOperationCompleted == null)) - { + public void SetRemoteApplicationsToRdsCollectionAsync(int itemId, int collectionId, RemoteApplication[] remoteApps, object userState) { + if ((this.SetRemoteApplicationsToRdsCollectionOperationCompleted == null)) { this.SetRemoteApplicationsToRdsCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetRemoteApplicationsToRdsCollectionOperationCompleted); } this.InvokeAsync("SetRemoteApplicationsToRdsCollection", new object[] { - itemId, - collectionId, - remoteApps}, this.SetRemoteApplicationsToRdsCollectionOperationCompleted, userState); + itemId, + collectionId, + remoteApps}, this.SetRemoteApplicationsToRdsCollectionOperationCompleted, userState); } - - private void OnSetRemoteApplicationsToRdsCollectionOperationCompleted(object arg) - { - if ((this.SetRemoteApplicationsToRdsCollectionCompleted != null)) - { + + private void OnSetRemoteApplicationsToRdsCollectionOperationCompleted(object arg) { + if ((this.SetRemoteApplicationsToRdsCollectionCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.SetRemoteApplicationsToRdsCollectionCompleted(this, new SetRemoteApplicationsToRdsCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } - + /// - [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsUsersCount", 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 int GetOrganizationRdsUsersCount(int itemId) - { + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsUsersCount", 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 int GetOrganizationRdsUsersCount(int itemId) { object[] results = this.Invoke("GetOrganizationRdsUsersCount", new object[] { - itemId}); + itemId}); return ((int)(results[0])); } - + /// - public System.IAsyncResult BeginGetOrganizationRdsUsersCount(int itemId, System.AsyncCallback callback, object asyncState) - { + public System.IAsyncResult BeginGetOrganizationRdsUsersCount(int itemId, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetOrganizationRdsUsersCount", new object[] { - itemId}, callback, asyncState); + itemId}, callback, asyncState); } - + /// - public int EndGetOrganizationRdsUsersCount(System.IAsyncResult asyncResult) - { + public int EndGetOrganizationRdsUsersCount(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((int)(results[0])); } - + /// - public void GetOrganizationRdsUsersCountAsync(int itemId) - { + public void GetOrganizationRdsUsersCountAsync(int itemId) { this.GetOrganizationRdsUsersCountAsync(itemId, null); } - + /// - public void GetOrganizationRdsUsersCountAsync(int itemId, object userState) - { - if ((this.GetOrganizationRdsUsersCountOperationCompleted == null)) - { + public void GetOrganizationRdsUsersCountAsync(int itemId, object userState) { + if ((this.GetOrganizationRdsUsersCountOperationCompleted == null)) { this.GetOrganizationRdsUsersCountOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationRdsUsersCountOperationCompleted); } this.InvokeAsync("GetOrganizationRdsUsersCount", new object[] { - itemId}, this.GetOrganizationRdsUsersCountOperationCompleted, userState); + itemId}, this.GetOrganizationRdsUsersCountOperationCompleted, userState); } - - private void OnGetOrganizationRdsUsersCountOperationCompleted(object arg) - { - if ((this.GetOrganizationRdsUsersCountCompleted != null)) - { + + private void OnGetOrganizationRdsUsersCountOperationCompleted(object arg) { + if ((this.GetOrganizationRdsUsersCountCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.GetOrganizationRdsUsersCountCompleted(this, new GetOrganizationRdsUsersCountCompletedEventArgs(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.3038")] public delegate void GetRdsCollectionCompletedEventHandler(object sender, GetRdsCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetRdsCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetRdsCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsCollection Result - { - get - { + public RdsCollection Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsCollection)(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetOrganizationRdsCollectionsCompletedEventHandler(object sender, GetOrganizationRdsCollectionsCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetOrganizationRdsCollectionsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetOrganizationRdsCollectionsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetOrganizationRdsCollectionsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetOrganizationRdsCollectionsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsCollection[] Result - { - get - { + public RdsCollection[] Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsCollection[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void AddRdsCollectionCompletedEventHandler(object sender, AddRdsCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class AddRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class AddRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal AddRdsCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal AddRdsCollectionCompletedEventArgs(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")] public delegate void GetRdsCollectionsPagedCompletedEventHandler(object sender, GetRdsCollectionsPagedCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetRdsCollectionsPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetRdsCollectionsPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetRdsCollectionsPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetRdsCollectionsPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsCollectionPaged Result - { - get - { + public RdsCollectionPaged Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsCollectionPaged)(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void RemoveRdsCollectionCompletedEventHandler(object sender, RemoveRdsCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class RemoveRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class RemoveRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal RemoveRdsCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal RemoveRdsCollectionCompletedEventArgs(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")] public delegate void GetRdsServersPagedCompletedEventHandler(object sender, GetRdsServersPagedCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetRdsServersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetRdsServersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetRdsServersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetRdsServersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsServersPaged Result - { - get - { + public RdsServersPaged Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsServersPaged)(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetFreeRdsServersPagedCompletedEventHandler(object sender, GetFreeRdsServersPagedCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetFreeRdsServersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetFreeRdsServersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetFreeRdsServersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetFreeRdsServersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsServersPaged Result - { - get - { + public RdsServersPaged Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsServersPaged)(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetOrganizationRdsServersPagedCompletedEventHandler(object sender, GetOrganizationRdsServersPagedCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetOrganizationRdsServersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetOrganizationRdsServersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetOrganizationRdsServersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetOrganizationRdsServersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsServersPaged Result - { - get - { + public RdsServersPaged Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsServersPaged)(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetOrganizationFreeRdsServersPagedCompletedEventHandler(object sender, GetOrganizationFreeRdsServersPagedCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetOrganizationFreeRdsServersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetOrganizationFreeRdsServersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetOrganizationFreeRdsServersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetOrganizationFreeRdsServersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsServersPaged Result - { - get - { + public RdsServersPaged Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsServersPaged)(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetRdsServerCompletedEventHandler(object sender, GetRdsServerCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetRdsServerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetRdsServerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetRdsServerCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetRdsServerCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsServer Result - { - get - { + public RdsServer Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsServer)(this.results[0])); } } } - + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + public delegate void SetRDServerNewConnectionAllowedCompletedEventHandler(object sender, SetRDServerNewConnectionAllowedCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class SetRDServerNewConnectionAllowedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal SetRDServerNewConnectionAllowedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public ResultObject Result { + get { + this.RaiseExceptionIfNecessary(); + return ((ResultObject)(this.results[0])); + } + } + } + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetCollectionRdsServersCompletedEventHandler(object sender, GetCollectionRdsServersCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetCollectionRdsServersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetCollectionRdsServersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetCollectionRdsServersCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetCollectionRdsServersCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsServer[] Result - { - get - { + public RdsServer[] Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsServer[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetOrganizationRdsServersCompletedEventHandler(object sender, GetOrganizationRdsServersCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetOrganizationRdsServersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetOrganizationRdsServersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetOrganizationRdsServersCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetOrganizationRdsServersCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RdsServer[] Result - { - get - { + public RdsServer[] Result { + get { this.RaiseExceptionIfNecessary(); return ((RdsServer[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void AddRdsServerCompletedEventHandler(object sender, AddRdsServerCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class AddRdsServerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class AddRdsServerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal AddRdsServerCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal AddRdsServerCompletedEventArgs(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")] public delegate void AddRdsServerToCollectionCompletedEventHandler(object sender, AddRdsServerToCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class AddRdsServerToCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class AddRdsServerToCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal AddRdsServerToCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal AddRdsServerToCollectionCompletedEventArgs(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")] public delegate void AddRdsServerToOrganizationCompletedEventHandler(object sender, AddRdsServerToOrganizationCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class AddRdsServerToOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class AddRdsServerToOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal AddRdsServerToOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal AddRdsServerToOrganizationCompletedEventArgs(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")] public delegate void RemoveRdsServerCompletedEventHandler(object sender, RemoveRdsServerCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class RemoveRdsServerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class RemoveRdsServerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal RemoveRdsServerCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal RemoveRdsServerCompletedEventArgs(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")] public delegate void RemoveRdsServerFromCollectionCompletedEventHandler(object sender, RemoveRdsServerFromCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class RemoveRdsServerFromCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class RemoveRdsServerFromCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal RemoveRdsServerFromCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal RemoveRdsServerFromCollectionCompletedEventArgs(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")] public delegate void RemoveRdsServerFromOrganizationCompletedEventHandler(object sender, RemoveRdsServerFromOrganizationCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class RemoveRdsServerFromOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class RemoveRdsServerFromOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal RemoveRdsServerFromOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal RemoveRdsServerFromOrganizationCompletedEventArgs(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")] public delegate void UpdateRdsServerCompletedEventHandler(object sender, UpdateRdsServerCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class UpdateRdsServerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class UpdateRdsServerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal UpdateRdsServerCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal UpdateRdsServerCompletedEventArgs(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")] public delegate void GetRdsCollectionUsersCompletedEventHandler(object sender, GetRdsCollectionUsersCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetRdsCollectionUsersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetRdsCollectionUsersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetRdsCollectionUsersCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetRdsCollectionUsersCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public OrganizationUser[] Result - { - get - { + public OrganizationUser[] Result { + get { this.RaiseExceptionIfNecessary(); return ((OrganizationUser[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void SetUsersToRdsCollectionCompletedEventHandler(object sender, SetUsersToRdsCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class SetUsersToRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class SetUsersToRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal SetUsersToRdsCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal SetUsersToRdsCollectionCompletedEventArgs(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")] public delegate void GetCollectionRemoteApplicationsCompletedEventHandler(object sender, GetCollectionRemoteApplicationsCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetCollectionRemoteApplicationsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetCollectionRemoteApplicationsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetCollectionRemoteApplicationsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetCollectionRemoteApplicationsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public RemoteApplication[] Result - { - get - { + public RemoteApplication[] Result { + get { this.RaiseExceptionIfNecessary(); return ((RemoteApplication[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetAvailableRemoteApplicationsCompletedEventHandler(object sender, GetAvailableRemoteApplicationsCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetAvailableRemoteApplicationsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetAvailableRemoteApplicationsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetAvailableRemoteApplicationsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetAvailableRemoteApplicationsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public StartMenuApp[] Result - { - get - { + public StartMenuApp[] Result { + get { this.RaiseExceptionIfNecessary(); return ((StartMenuApp[])(this.results[0])); } } } - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void AddRemoteApplicationToCollectionCompletedEventHandler(object sender, AddRemoteApplicationToCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class AddRemoteApplicationToCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class AddRemoteApplicationToCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal AddRemoteApplicationToCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal AddRemoteApplicationToCollectionCompletedEventArgs(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")] public delegate void RemoveRemoteApplicationFromCollectionCompletedEventHandler(object sender, RemoveRemoteApplicationFromCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class RemoveRemoteApplicationFromCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class RemoveRemoteApplicationFromCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal RemoveRemoteApplicationFromCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal RemoveRemoteApplicationFromCollectionCompletedEventArgs(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")] public delegate void SetRemoteApplicationsToRdsCollectionCompletedEventHandler(object sender, SetRemoteApplicationsToRdsCollectionCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class SetRemoteApplicationsToRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class SetRemoteApplicationsToRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal SetRemoteApplicationsToRdsCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal SetRemoteApplicationsToRdsCollectionCompletedEventArgs(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")] public delegate void GetOrganizationRdsUsersCountCompletedEventHandler(object sender, GetOrganizationRdsUsersCountCompletedEventArgs e); - + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] - public partial class GetOrganizationRdsUsersCountCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs - { - + public partial class GetOrganizationRdsUsersCountCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + private object[] results; - - internal GetOrganizationRdsUsersCountCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : - base(exception, cancelled, userState) - { + + internal GetOrganizationRdsUsersCountCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { this.results = results; } - + /// - public int Result - { - get - { + public int Result { + get { this.RaiseExceptionIfNecessary(); return ((int)(this.results[0])); } } } - } diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs index f2a3ca42..41db1b4d 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs @@ -108,6 +108,11 @@ namespace WebsitePanel.EnterpriseServer return GetRdsServerInternal(rdsSeverId); } + public static ResultObject SetRDServerNewConnectionAllowed(int itemId, bool newConnectionAllowed, int rdsSeverId) + { + return SetRDServerNewConnectionAllowedInternal(itemId, newConnectionAllowed, rdsSeverId); + } + public static List GetCollectionRdsServers(int collectionId) { return GetCollectionRdsServersInternal(collectionId); @@ -457,6 +462,52 @@ namespace WebsitePanel.EnterpriseServer return ObjectUtils.FillObjectFromDataReader(DataProvider.GetRDSServerById(rdsSeverId)); } + private static ResultObject SetRDServerNewConnectionAllowedInternal(int itemId, bool newConnectionAllowed, int rdsSeverId) + { + ResultObject result = TaskManager.StartResultTask("REMOTE_DESKTOP_SERVICES", "SET_RDS_SERVER_NEW_CONNECTIONS_ALLOWED"); ; + try + { + // load organization + Organization org = OrganizationController.GetOrganization(itemId); + if (org == null) + { + result.IsSuccess = false; + result.AddError("", new NullReferenceException("Organization not found")); + return result; + } + + var rds = GetRemoteDesktopServices(GetRemoteDesktopServiceID(org.PackageId)); + + var rdsServer = GetRdsServer(rdsSeverId); + + if (rdsServer == null) + { + result.IsSuccess = false; + result.AddError("", new NullReferenceException("RDS Server not found")); + return result; + } + + rds.SetRDServerNewConnectionAllowed(newConnectionAllowed, rdsServer); + } + catch (Exception ex) + { + result.AddError("REMOTE_DESKTOP_SERVICES_SET_RDS_SERVER_NEW_CONNECTIONS_ALLOWED", ex); + } + finally + { + if (!result.IsSuccess) + { + TaskManager.CompleteResultTask(result); + } + else + { + TaskManager.CompleteResultTask(); + } + } + + return result; + } + private static int GetOrganizationRdsUsersCountInternal(int itemId) { return DataProvider.GetOrganizationRdsUsersCount(itemId); @@ -639,7 +690,7 @@ namespace WebsitePanel.EnterpriseServer RdsServer rdsServer = GetRdsServer(serverId); - if (!rds.CheckSessionHostFeatureInstallation(rdsServer.FqdName)) + //if (!rds.CheckSessionHostFeatureInstallation(rdsServer.FqdName)) { rds.AddSessionHostFeatureToServer(rdsServer.FqdName); } diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esRemoteDesktopServices.asmx.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esRemoteDesktopServices.asmx.cs index 48005ae8..d86b9733 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esRemoteDesktopServices.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esRemoteDesktopServices.asmx.cs @@ -122,6 +122,12 @@ namespace WebsitePanel.EnterpriseServer return RemoteDesktopServicesController.GetRdsServer(rdsSeverId); } + [WebMethod] + public ResultObject SetRDServerNewConnectionAllowed(int itemId, bool newConnectionAllowed, int rdsSeverId) + { + return RemoteDesktopServicesController.SetRDServerNewConnectionAllowed(itemId, newConnectionAllowed, rdsSeverId); + } + [WebMethod] public List GetCollectionRdsServers(int collectionId) { diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/IRemoteDesktopServices.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/IRemoteDesktopServices.cs index 6cf5ec6b..db2e114c 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/IRemoteDesktopServices.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/IRemoteDesktopServices.cs @@ -48,6 +48,8 @@ namespace WebsitePanel.Providers.RemoteDesktopServices void RemoveSessionHostServerFromCollection(string organizationId, string collectionName, RdsServer server); void RemoveSessionHostServersFromCollection(string organizationId, string collectionName, List servers); + void SetRDServerNewConnectionAllowed(bool newConnectionAllowed, RdsServer server); + List GetAvailableRemoteApplications(string collectionName); List GetCollectionRemoteApplications(string collectionName); bool AddRemoteApplication(string collectionName, RemoteApplication remoteApp); diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs index 68de8394..e033c59f 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs @@ -370,7 +370,7 @@ namespace WebsitePanel.Providers.RemoteDesktopServices } } - public void AddSessionHostServersToCollection(string organizationId, string collectionName, List servers) + public void AddSessionHostServersToCollection(string organizationId, string collectionName, List servers) { foreach (var server in servers) { @@ -411,6 +411,30 @@ namespace WebsitePanel.Providers.RemoteDesktopServices #endregion + public void SetRDServerNewConnectionAllowed(bool newConnectionAllowed, RdsServer server) + { + Runspace runSpace = null; + + try + { + runSpace = OpenRunspace(); + + Command cmd = new Command("Set-RDSessionHost"); + cmd.Parameters.Add("SessionHost", server.FqdName); + cmd.Parameters.Add("NewConnectionAllowed", string.Format("${0}", newConnectionAllowed.ToString())); + + ExecuteShellCommand(runSpace, cmd, false); + } + catch (Exception e) + { + + } + finally + { + CloseRunspace(runSpace); + } + } + #region Remote Applications public List GetAvailableRemoteApplications(string collectionName) @@ -635,8 +659,8 @@ namespace WebsitePanel.Providers.RemoteDesktopServices ExecuteShellCommand(runSpace, cmd, false); } + - private bool ExistRdsServerInDeployment(Runspace runSpace, RdsServer server) { Command cmd = new Command("Get-RDserver"); @@ -737,6 +761,8 @@ namespace WebsitePanel.Providers.RemoteDesktopServices ActiveDirectoryUtils.AddObjectToGroup(computerPath, GetComputerGroupPath(organizationId, collectionName)); } } + + SetRDServerNewConnectionAllowed(false, server); } private void RemoveComputerFromCollectionAdComputerGroup(string organizationId, string collectionName, RdsServer server) @@ -766,14 +792,35 @@ namespace WebsitePanel.Providers.RemoteDesktopServices bool installationResult = false; Runspace runSpace = null; + PSObject feature = null; try - { - runSpace = OpenRunspace(); + { + if (!CheckSessionHostFeatureInstallation(hostName)) + { + runSpace = OpenRunspace(); + + feature = AddFeature(runSpace, hostName, "RDS-RD-Server", true, true); + installationResult = (bool)GetPSObjectProperty(feature, "Success"); + } + else + { + runSpace = OpenRunspace(); + installationResult = true; + } + - var feature = AddFeature(runSpace, hostName, "RDS-RD-Server", true, true); + if (installationResult && !IsFeatureInstalled(hostName, "Desktop-Experience", runSpace)) + { + feature = AddFeature(runSpace, hostName, "Desktop-Experience", true, false); + installationResult = (bool) GetPSObjectProperty(feature, "Success"); + } - installationResult = (bool) GetPSObjectProperty(feature, "Success"); + if (installationResult && !IsFeatureInstalled(hostName, "NET-Framework-Core", runSpace)) + { + feature = AddFeature(runSpace, hostName, "NET-Framework-Core", true, false); + installationResult = (bool)GetPSObjectProperty(feature, "Success"); + } } finally { @@ -1087,60 +1134,37 @@ namespace WebsitePanel.Providers.RemoteDesktopServices #region Windows Feature PowerShell - internal bool IsFeatureInstalled(string hostName, string featureName) + internal bool IsFeatureInstalled(string hostName, string featureName, Runspace runSpace) { - bool isInstalled = false; - - Runspace runSpace = null; - try + bool isInstalled = false; + Command cmd = new Command("Get-WindowsFeature"); + cmd.Parameters.Add("Name", featureName); + var feature = ExecuteRemoteShellCommand(runSpace, hostName, cmd).FirstOrDefault(); + + if (feature != null) { - runSpace = OpenRunspace(); - - Command cmd = new Command("Get-WindowsFeature"); - cmd.Parameters.Add("Name", featureName); - - var feature = ExecuteRemoteShellCommand(runSpace, hostName, cmd).FirstOrDefault(); - - if (feature != null) - { - isInstalled = (bool) GetPSObjectProperty(feature, "Installed"); - } - } - finally - { - CloseRunspace(runSpace); - } + isInstalled = (bool) GetPSObjectProperty(feature, "Installed"); + } return isInstalled; } internal PSObject AddFeature(Runspace runSpace, string hostName, string featureName, bool includeAllSubFeature = true, bool restart = false) - { - PSObject feature; + { + Command cmd = new Command("Add-WindowsFeature"); + cmd.Parameters.Add("Name", featureName); - try + if (includeAllSubFeature) { - Command cmd = new Command("Add-WindowsFeature"); - cmd.Parameters.Add("Name", featureName); - - if (includeAllSubFeature) - { - cmd.Parameters.Add("IncludeAllSubFeature", ""); - } - - if (restart) - { - cmd.Parameters.Add("Restart", ""); - } - - feature = ExecuteRemoteShellCommand(runSpace, hostName, cmd).FirstOrDefault(); + cmd.Parameters.Add("IncludeAllSubFeature", ""); } - finally + + if (restart) { - CloseRunspace(runSpace); + cmd.Parameters.Add("Restart", ""); } - return feature; + return ExecuteRemoteShellCommand(runSpace, hostName, cmd).FirstOrDefault(); } #endregion diff --git a/WebsitePanel/Sources/WebsitePanel.Server.Client/RemoteDesktopServicesProxy.cs b/WebsitePanel/Sources/WebsitePanel.Server.Client/RemoteDesktopServicesProxy.cs index e3637eae..341c32cf 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server.Client/RemoteDesktopServicesProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server.Client/RemoteDesktopServicesProxy.cs @@ -45,6 +45,8 @@ namespace WebsitePanel.Providers.RemoteDesktopServices { private System.Threading.SendOrPostCallback RemoveSessionHostServersFromCollectionOperationCompleted; + private System.Threading.SendOrPostCallback SetRDServerNewConnectionAllowedOperationCompleted; + private System.Threading.SendOrPostCallback GetAvailableRemoteApplicationsOperationCompleted; private System.Threading.SendOrPostCallback GetCollectionRemoteApplicationsOperationCompleted; @@ -90,6 +92,9 @@ namespace WebsitePanel.Providers.RemoteDesktopServices { /// public event RemoveSessionHostServersFromCollectionCompletedEventHandler RemoveSessionHostServersFromCollectionCompleted; + /// + public event SetRDServerNewConnectionAllowedCompletedEventHandler SetRDServerNewConnectionAllowedCompleted; + /// public event GetAvailableRemoteApplicationsCompletedEventHandler GetAvailableRemoteApplicationsCompleted; @@ -478,6 +483,49 @@ namespace WebsitePanel.Providers.RemoteDesktopServices { } } + /// + [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/SetRDServerNewConnectionAllowed", 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 SetRDServerNewConnectionAllowed(bool newConnectionAllowed, RdsServer server) { + this.Invoke("SetRDServerNewConnectionAllowed", new object[] { + newConnectionAllowed, + server}); + } + + /// + public System.IAsyncResult BeginSetRDServerNewConnectionAllowed(bool newConnectionAllowed, RdsServer server, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("SetRDServerNewConnectionAllowed", new object[] { + newConnectionAllowed, + server}, callback, asyncState); + } + + /// + public void EndSetRDServerNewConnectionAllowed(System.IAsyncResult asyncResult) { + this.EndInvoke(asyncResult); + } + + /// + public void SetRDServerNewConnectionAllowedAsync(bool newConnectionAllowed, RdsServer server) { + this.SetRDServerNewConnectionAllowedAsync(newConnectionAllowed, server, null); + } + + /// + public void SetRDServerNewConnectionAllowedAsync(bool newConnectionAllowed, RdsServer server, object userState) { + if ((this.SetRDServerNewConnectionAllowedOperationCompleted == null)) { + this.SetRDServerNewConnectionAllowedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetRDServerNewConnectionAllowedOperationCompleted); + } + this.InvokeAsync("SetRDServerNewConnectionAllowed", new object[] { + newConnectionAllowed, + server}, this.SetRDServerNewConnectionAllowedOperationCompleted, userState); + } + + private void OnSetRDServerNewConnectionAllowedOperationCompleted(object arg) { + if ((this.SetRDServerNewConnectionAllowedCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.SetRDServerNewConnectionAllowedCompleted(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/GetAvailableRemoteApplications", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] @@ -949,6 +997,10 @@ namespace WebsitePanel.Providers.RemoteDesktopServices { [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void RemoveSessionHostServersFromCollectionCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + public delegate void SetRDServerNewConnectionAllowedCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetAvailableRemoteApplicationsCompletedEventHandler(object sender, GetAvailableRemoteApplicationsCompletedEventArgs e); diff --git a/WebsitePanel/Sources/WebsitePanel.Server/RemoteDesktopServices.asmx.cs b/WebsitePanel/Sources/WebsitePanel.Server/RemoteDesktopServices.asmx.cs index 0bb0fb26..91d8d444 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/RemoteDesktopServices.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server/RemoteDesktopServices.asmx.cs @@ -191,6 +191,22 @@ namespace WebsitePanel.Server } } + [WebMethod, SoapHeader("settings")] + public void SetRDServerNewConnectionAllowed(bool newConnectionAllowed, RdsServer server) + { + try + { + Log.WriteStart("'{0}' SetRDServerNewConnectionAllowed", ProviderSettings.ProviderName); + RDSProvider.SetRDServerNewConnectionAllowed(newConnectionAllowed, server); + Log.WriteEnd("'{0}' SetRDServerNewConnectionAllowed", ProviderSettings.ProviderName); + } + catch (Exception ex) + { + Log.WriteError(String.Format("'{0}' SetRDServerNewConnectionAllowed", ProviderSettings.ProviderName), ex); + throw; + } + } + [WebMethod, SoapHeader("settings")] public List GetAvailableRemoteApplications(string collectionName) { From 8fa7f8d99650da371f0a2babc43c6c8c3894141b Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Mon, 8 Dec 2014 06:32:04 -0800 Subject: [PATCH 02/23] Adding Desktop Experience Feature --- .../Windows2012.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs index e033c59f..0e78baba 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs @@ -816,7 +816,7 @@ namespace WebsitePanel.Providers.RemoteDesktopServices installationResult = (bool) GetPSObjectProperty(feature, "Success"); } - if (installationResult && !IsFeatureInstalled(hostName, "NET-Framework-Core", runSpace)) + if (installationResult && !IsFeatureInstalled(hostName, "NET-Framework-45-Core", runSpace)) { feature = AddFeature(runSpace, hostName, "NET-Framework-Core", true, false); installationResult = (bool)GetPSObjectProperty(feature, "Success"); From f4c248637eeef98f4c183d5c74a51f1825257d5b Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Mon, 8 Dec 2014 06:33:45 -0800 Subject: [PATCH 03/23] Adding Desktop Experience Feature --- .../Windows2012.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs index 0e78baba..232842de 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs @@ -818,7 +818,7 @@ namespace WebsitePanel.Providers.RemoteDesktopServices if (installationResult && !IsFeatureInstalled(hostName, "NET-Framework-45-Core", runSpace)) { - feature = AddFeature(runSpace, hostName, "NET-Framework-Core", true, false); + feature = AddFeature(runSpace, hostName, "NET-Framework-45-Core", true, false); installationResult = (bool)GetPSObjectProperty(feature, "Success"); } } From 83b6b01afb7acecc5ca4c89ff6d30fdb1c866cd4 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Mon, 8 Dec 2014 20:41:47 -0500 Subject: [PATCH 04/23] Added tag build-2.1.0.478 for changeset b60b75f4ac3f From 4ecb5896ce3b3076646008f83f95ae0d5963ace7 Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Tue, 9 Dec 2014 05:27:06 -0800 Subject: [PATCH 05/23] Enable/Disable RDS server --- WebsitePanel/Database/update_db.sql | 196 ++++++++++-------- .../Data/DataProvider.cs | 7 +- .../RemoteDesktopServicesController.cs | 4 +- .../RemoteDesktopServices/RdsServer.cs | 1 + .../AssignedRDSServers.ascx.resx | 12 ++ .../WebsitePanel/RDS/AssignedRDSServers.ascx | 14 +- .../RDS/AssignedRDSServers.ascx.cs | 58 ++++-- 7 files changed, 174 insertions(+), 118 deletions(-) diff --git a/WebsitePanel/Database/update_db.sql b/WebsitePanel/Database/update_db.sql index 355e1325..644bf947 100644 --- a/WebsitePanel/Database/update_db.sql +++ b/WebsitePanel/Database/update_db.sql @@ -5528,31 +5528,6 @@ WHERE Id = @Id GO -IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'UpdateRDSServer') -DROP PROCEDURE UpdateRDSServer -GO -CREATE PROCEDURE [dbo].[UpdateRDSServer] -( - @Id INT, - @ItemID INT, - @Name NVARCHAR(255), - @FqdName NVARCHAR(255), - @Description NVARCHAR(255), - @RDSCollectionId INT -) -AS - -UPDATE RDSServers -SET - ItemID = @ItemID, - Name = @Name, - FqdName = @FqdName, - Description = @Description, - RDSCollectionId = @RDSCollectionId -WHERE ID = @Id -GO - - IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddRDSServerToOrganization') DROP PROCEDURE AddRDSServerToOrganization GO @@ -5707,73 +5682,7 @@ GO -IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetRDSServersPaged') -DROP PROCEDURE GetRDSServersPaged -GO -CREATE PROCEDURE [dbo].[GetRDSServersPaged] -( - @FilterColumn nvarchar(50) = '', - @FilterValue nvarchar(50) = '', - @ItemID int, - @IgnoreItemId bit, - @RdsCollectionId int, - @IgnoreRdsCollectionId bit, - @SortColumn nvarchar(50), - @StartRow int, - @MaximumRows int -) -AS --- build query and run it to the temporary table -DECLARE @sql nvarchar(2000) -SET @sql = ' - -DECLARE @EndRow int -SET @EndRow = @StartRow + @MaximumRows - -DECLARE @RDSServer TABLE -( - ItemPosition int IDENTITY(0,1), - RDSServerId int -) -INSERT INTO @RDSServer (RDSServerId) -SELECT - S.ID -FROM RDSServers AS S -WHERE - ((((@ItemID is Null AND S.ItemID is null) or @IgnoreItemId = 1) - or (@ItemID is not Null AND S.ItemID = @ItemID)) - and - (((@RdsCollectionId is Null AND S.RDSCollectionId is null) or @IgnoreRdsCollectionId = 1) - or (@RdsCollectionId is not Null AND S.RDSCollectionId = @RdsCollectionId)))' - -IF @FilterColumn <> '' AND @FilterValue <> '' -SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue ' - -IF @SortColumn <> '' AND @SortColumn IS NOT NULL -SET @sql = @sql + ' ORDER BY ' + @SortColumn + ' ' - -SET @sql = @sql + ' SELECT COUNT(RDSServerId) FROM @RDSServer; -SELECT - ST.ID, - ST.ItemID, - ST.Name, - ST.FqdName, - ST.Description, - ST.RdsCollectionId, - SI.ItemName -FROM @RDSServer AS S -INNER JOIN RDSServers AS ST ON S.RDSServerId = ST.ID -LEFT OUTER JOIN ServiceItems AS SI ON SI.ItemId = ST.ItemId -WHERE S.ItemPosition BETWEEN @StartRow AND @EndRow' - -exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @FilterValue nvarchar(50), @ItemID int, @RdsCollectionId int, @IgnoreItemId bit, @IgnoreRdsCollectionId bit', -@StartRow, @MaximumRows, @FilterValue, @ItemID, @RdsCollectionId, @IgnoreItemId , @IgnoreRdsCollectionId - - -RETURN - -GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON @@ -6082,3 +5991,108 @@ set PropertyValue='%PROGRAMFILES(x86)%\PHP\php.exe' where PropertyName='Php4Path' and ProviderId in(101, 105) GO + +IF NOT EXISTS(SELECT * FROM sys.columns + WHERE [name] = N'ConnectionEnabled' AND [object_id] = OBJECT_ID(N'RDSServers')) +BEGIN + ALTER TABLE [RDSServers] + ADD ConnectionEnabled BIT NOT NULL DEFAULT(1) +END + +GO + + +IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetRDSServersPaged') +DROP PROCEDURE GetRDSServersPaged +GO +CREATE PROCEDURE [dbo].[GetRDSServersPaged] +( + @FilterColumn nvarchar(50) = '', + @FilterValue nvarchar(50) = '', + @ItemID int, + @IgnoreItemId bit, + @RdsCollectionId int, + @IgnoreRdsCollectionId bit, + @SortColumn nvarchar(50), + @StartRow int, + @MaximumRows int +) +AS +-- build query and run it to the temporary table +DECLARE @sql nvarchar(2000) + +SET @sql = ' + +DECLARE @EndRow int +SET @EndRow = @StartRow + @MaximumRows + +DECLARE @RDSServer TABLE +( + ItemPosition int IDENTITY(0,1), + RDSServerId int +) +INSERT INTO @RDSServer (RDSServerId) +SELECT + S.ID +FROM RDSServers AS S +WHERE + ((((@ItemID is Null AND S.ItemID is null) or @IgnoreItemId = 1) + or (@ItemID is not Null AND S.ItemID = @ItemID)) + and + (((@RdsCollectionId is Null AND S.RDSCollectionId is null) or @IgnoreRdsCollectionId = 1) + or (@RdsCollectionId is not Null AND S.RDSCollectionId = @RdsCollectionId)))' + +IF @FilterColumn <> '' AND @FilterValue <> '' +SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue ' + +IF @SortColumn <> '' AND @SortColumn IS NOT NULL +SET @sql = @sql + ' ORDER BY ' + @SortColumn + ' ' + +SET @sql = @sql + ' SELECT COUNT(RDSServerId) FROM @RDSServer; +SELECT + ST.ID, + ST.ItemID, + ST.Name, + ST.FqdName, + ST.Description, + ST.RdsCollectionId, + SI.ItemName, + ST.ConnectionEnabled +FROM @RDSServer AS S +INNER JOIN RDSServers AS ST ON S.RDSServerId = ST.ID +LEFT OUTER JOIN ServiceItems AS SI ON SI.ItemId = ST.ItemId +WHERE S.ItemPosition BETWEEN @StartRow AND @EndRow' + +exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @FilterValue nvarchar(50), @ItemID int, @RdsCollectionId int, @IgnoreItemId bit, @IgnoreRdsCollectionId bit', +@StartRow, @MaximumRows, @FilterValue, @ItemID, @RdsCollectionId, @IgnoreItemId , @IgnoreRdsCollectionId + + +RETURN + +GO + +IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'UpdateRDSServer') +DROP PROCEDURE UpdateRDSServer +GO +CREATE PROCEDURE [dbo].[UpdateRDSServer] +( + @Id INT, + @ItemID INT, + @Name NVARCHAR(255), + @FqdName NVARCHAR(255), + @Description NVARCHAR(255), + @RDSCollectionId INT, + @ConnectionEnabled BIT +) +AS + +UPDATE RDSServers +SET + ItemID = @ItemID, + Name = @Name, + FqdName = @FqdName, + Description = @Description, + RDSCollectionId = @RDSCollectionId, + ConnectionEnabled = @ConnectionEnabled +WHERE ID = @Id +GO \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Data/DataProvider.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Data/DataProvider.cs index 62f9905f..98e2a54d 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Data/DataProvider.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Data/DataProvider.cs @@ -4625,10 +4625,10 @@ namespace WebsitePanel.EnterpriseServer public static void UpdateRDSServer(RdsServer server) { UpdateRDSServer(server.Id, server.ItemId, server.Name, server.FqdName, server.Description, - server.RdsCollectionId); + server.RdsCollectionId, server.ConnectionEnabled); } - public static void UpdateRDSServer(int id, int? itemId, string name, string fqdName, string description, int? rdsCollectionId) + public static void UpdateRDSServer(int id, int? itemId, string name, string fqdName, string description, int? rdsCollectionId, bool connectionEnabled) { SqlHelper.ExecuteNonQuery( ConnectionString, @@ -4639,7 +4639,8 @@ namespace WebsitePanel.EnterpriseServer new SqlParameter("@Name", name), new SqlParameter("@FqdName", fqdName), new SqlParameter("@Description", description), - new SqlParameter("@RDSCollectionId", rdsCollectionId) + new SqlParameter("@RDSCollectionId", rdsCollectionId), + new SqlParameter("@ConnectionEnabled", connectionEnabled) ); } diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs index 41db1b4d..c3c154a7 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs @@ -478,7 +478,7 @@ namespace WebsitePanel.EnterpriseServer var rds = GetRemoteDesktopServices(GetRemoteDesktopServiceID(org.PackageId)); - var rdsServer = GetRdsServer(rdsSeverId); + var rdsServer = GetRdsServer(rdsSeverId); if (rdsServer == null) { @@ -488,6 +488,8 @@ namespace WebsitePanel.EnterpriseServer } rds.SetRDServerNewConnectionAllowed(newConnectionAllowed, rdsServer); + rdsServer.ConnectionEnabled = newConnectionAllowed; + DataProvider.UpdateRDSServer(rdsServer); } catch (Exception ex) { diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/RdsServer.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/RdsServer.cs index 5d44984f..de1760a1 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/RdsServer.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/RdsServer.cs @@ -18,5 +18,6 @@ namespace WebsitePanel.Providers.RemoteDesktopServices public string Address { get; set; } public string ItemName { get; set; } public int? RdsCollectionId { get; set; } + public bool ConnectionEnabled { get; set; } } } \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/App_LocalResources/AssignedRDSServers.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/App_LocalResources/AssignedRDSServers.ascx.resx index 56d959f7..33277c17 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/App_LocalResources/AssignedRDSServers.ascx.resx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/App_LocalResources/AssignedRDSServers.ascx.resx @@ -147,4 +147,16 @@ Total RDS Servers Allocated: + + Disable + + + Enable + + + Disable + + + Enable + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/AssignedRDSServers.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/AssignedRDSServers.ascx index c1956968..0ce2a538 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/AssignedRDSServers.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/AssignedRDSServers.ascx @@ -1,4 +1,5 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="AssignedRDSServers.ascx.cs" Inherits="WebsitePanel.Portal.RDS.AssignedRDSServers" %> +<%@ Import Namespace="WebsitePanel.Portal" %> <%@ Register Src="../UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="wsp" %> <%@ Register Src="../UserControls/QuotaViewer.ascx" TagName="QuotaViewer" TagPrefix="wsp" %> <%@ Register Src="../UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %> @@ -46,15 +47,24 @@ DataSourceID="odsRDSAssignedServersPaged" PageSize="20"> - + <%# Eval("Name") %> - + + + + + + + + diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/AssignedRDSServers.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/AssignedRDSServers.ascx.cs index 906f8182..025f24fd 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/AssignedRDSServers.ascx.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/AssignedRDSServers.ascx.cs @@ -61,35 +61,31 @@ namespace WebsitePanel.Portal.RDS protected void gvRDSAssignedServers_RowCommand(object sender, GridViewCommandEventArgs e) { - if (e.CommandName == "DeleteItem") - { - // delete RDS Server - int rdsServerId = int.Parse(e.CommandArgument.ToString()); + int rdsServerId = int.Parse(e.CommandArgument.ToString()); - try - { - RdsServer rdsServer = ES.Services.RDS.GetRdsServer(rdsServerId); + + RdsServer rdsServer = ES.Services.RDS.GetRdsServer(rdsServerId); + + switch (e.CommandName) + { + case "DeleteItem": if (rdsServer.RdsCollectionId != null) { messageBox.ShowErrorMessage("RDS_UNASSIGN_SERVER_FROM_ORG_SERVER_IS_IN_COLLECTION"); return; } - ResultObject result = ES.Services.RDS.RemoveRdsServerFromOrganization(rdsServerId); - if (!result.IsSuccess) - { - messageBox.ShowMessage(result, "REMOTE_DESKTOP_SERVICES_UNASSIGN_SERVER_FROM_ORG", "RDS"); - return; - } - - gvRDSAssignedServers.DataBind(); - - } - catch (Exception ex) - { - ShowErrorMessage("REMOTE_DESKTOP_SERVICES_UNASSIGN_SERVER_FROM_ORG", ex); - } + DeleteItem(rdsServerId); + break; + case "EnableItem": + ChangeConnectionState(true, rdsServer); + break; + case "DisableItem": + ChangeConnectionState(false, rdsServer); + break; } + + gvRDSAssignedServers.DataBind(); } protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) @@ -97,6 +93,26 @@ namespace WebsitePanel.Portal.RDS gvRDSAssignedServers.PageSize = Convert.ToInt16(ddlPageSize.SelectedValue); gvRDSAssignedServers.DataBind(); + } + + #region Methods + + private void DeleteItem(int rdsServerId) + { + ResultObject result = ES.Services.RDS.RemoveRdsServerFromOrganization(rdsServerId); + + if (!result.IsSuccess) + { + messageBox.ShowMessage(result, "REMOTE_DESKTOP_SERVICES_UNASSIGN_SERVER_FROM_ORG", "RDS"); + return; + } } + + private void ChangeConnectionState(bool enabled, RdsServer rdsServer) + { + ES.Services.RDS.SetRDServerNewConnectionAllowed(rdsServer.ItemId.Value, enabled, rdsServer.Id); + } + + #endregion } } \ No newline at end of file From 1942bb60514a6cf252ee6c60c0f725775d328e96 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Tue, 9 Dec 2014 21:17:05 -0500 Subject: [PATCH 06/23] Added tag build-2.1.0.479 for changeset 162c51d49228 From 28bf005356d12b83d5cb9a2fd59b9010a3592ea7 Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Wed, 10 Dec 2014 04:40:30 -0800 Subject: [PATCH 07/23] RDS Server Prerequisites --- .../Windows2012.cs | 105 ++++++++++++------ 1 file changed, 72 insertions(+), 33 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs index 232842de..1e8d85bc 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs @@ -128,11 +128,41 @@ namespace WebsitePanel.Providers.RemoteDesktopServices #region HostingServiceProvider methods public override bool IsInstalled() - { - // TODO: Remove it. - //return true; + { Server.Utils.OS.WindowsVersion version = WebsitePanel.Server.Utils.OS.GetVersion(); - return version == WebsitePanel.Server.Utils.OS.WindowsVersion.WindowsServer2012; + return version == WebsitePanel.Server.Utils.OS.WindowsVersion.WindowsServer2012 || version == WebsitePanel.Server.Utils.OS.WindowsVersion.WindowsServer2012R2; + } + + public override string[] Install() + { + Runspace runSpace = null; + PSObject feature = null; + + try + { + runSpace = OpenRunspace(); + + if (!IsFeatureInstalled("Desktop-Experience", runSpace)) + { + feature = AddFeature(runSpace, "Desktop-Experience", true, false); + } + + if (!IsFeatureInstalled("NET-Framework-Core", runSpace)) + { + feature = AddFeature(runSpace, "NET-Framework-Core", true, false); + } + + if (!IsFeatureInstalled("NET-Framework-45-Core", runSpace)) + { + feature = AddFeature(runSpace, "NET-Framework-45-Core", true, false); + } + } + finally + { + CloseRunspace(runSpace); + } + + return new string[]{}; } #endregion @@ -390,7 +420,7 @@ namespace WebsitePanel.Providers.RemoteDesktopServices cmd.Parameters.Add("ConnectionBroker", ConnectionBroker); cmd.Parameters.Add("SessionHost", server.FqdName); cmd.Parameters.Add("Force", true); - + ExecuteShellCommand(runSpace, cmd, false); RemoveComputerFromCollectionAdComputerGroup(organizationId, collectionName, server); @@ -790,37 +820,13 @@ namespace WebsitePanel.Providers.RemoteDesktopServices public bool AddSessionHostFeatureToServer(string hostName) { bool installationResult = false; - Runspace runSpace = null; - PSObject feature = null; try - { - if (!CheckSessionHostFeatureInstallation(hostName)) - { - runSpace = OpenRunspace(); - - feature = AddFeature(runSpace, hostName, "RDS-RD-Server", true, true); - installationResult = (bool)GetPSObjectProperty(feature, "Success"); - } - else - { - runSpace = OpenRunspace(); - installationResult = true; - } - - - if (installationResult && !IsFeatureInstalled(hostName, "Desktop-Experience", runSpace)) - { - feature = AddFeature(runSpace, hostName, "Desktop-Experience", true, false); - installationResult = (bool) GetPSObjectProperty(feature, "Success"); - } - - if (installationResult && !IsFeatureInstalled(hostName, "NET-Framework-45-Core", runSpace)) - { - feature = AddFeature(runSpace, hostName, "NET-Framework-45-Core", true, false); - installationResult = (bool)GetPSObjectProperty(feature, "Success"); - } + { + runSpace = OpenRunspace(); + var feature = AddFeature(runSpace, hostName, "RDS-RD-Server", true, true); + installationResult = (bool)GetPSObjectProperty(feature, "Success"); } finally { @@ -1134,6 +1140,21 @@ namespace WebsitePanel.Providers.RemoteDesktopServices #region Windows Feature PowerShell + internal bool IsFeatureInstalled(string featureName, Runspace runSpace) + { + bool isInstalled = false; + Command cmd = new Command("Get-WindowsFeature"); + cmd.Parameters.Add("Name", featureName); + var feature = ExecuteShellCommand(runSpace, cmd, false).FirstOrDefault(); + + if (feature != null) + { + isInstalled = (bool)GetPSObjectProperty(feature, "Installed"); + } + + return isInstalled; + } + internal bool IsFeatureInstalled(string hostName, string featureName, Runspace runSpace) { bool isInstalled = false; @@ -1149,6 +1170,24 @@ namespace WebsitePanel.Providers.RemoteDesktopServices return isInstalled; } + internal PSObject AddFeature(Runspace runSpace, string featureName, bool includeAllSubFeature = true, bool restart = false) + { + Command cmd = new Command("Add-WindowsFeature"); + cmd.Parameters.Add("Name", featureName); + + if (includeAllSubFeature) + { + cmd.Parameters.Add("IncludeAllSubFeature", true); + } + + if (restart) + { + cmd.Parameters.Add("Restart", true); + } + + return ExecuteShellCommand(runSpace, cmd, false).FirstOrDefault(); + } + internal PSObject AddFeature(Runspace runSpace, string hostName, string featureName, bool includeAllSubFeature = true, bool restart = false) { Command cmd = new Command("Add-WindowsFeature"); From 6e00d5a2f2fc83987987041440b1291e13159f27 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Wed, 10 Dec 2014 11:59:13 -0500 Subject: [PATCH 08/23] Added tag build-2.1.0.480 for changeset f30488856e53 From 2617a78b8cdddf13bc420929ec8be7465e6eb8cd Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Wed, 10 Dec 2014 12:05:12 -0500 Subject: [PATCH 09/23] Added tag build-2.1.0.481 for changeset f30488856e53 From 07efbd695ec11be22a7b3208594eaed1e8c5ed55 Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Wed, 10 Dec 2014 23:03:33 -0800 Subject: [PATCH 10/23] Merging with main --- WebsitePanel/Database/update_db.sql | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/WebsitePanel/Database/update_db.sql b/WebsitePanel/Database/update_db.sql index 88f9e430..10aa2b73 100644 --- a/WebsitePanel/Database/update_db.sql +++ b/WebsitePanel/Database/update_db.sql @@ -1,6 +1,4 @@ -USE [${install.database}] -GO - + -- update database version DECLARE @build_version nvarchar(10), @build_date datetime SET @build_version = N'${release.version}' @@ -5451,7 +5449,8 @@ CREATE TABLE RDSServers Name NVARCHAR(255), FqdName NVARCHAR(255), Description NVARCHAR(255), - RDSCollectionId INT/* FOREIGN KEY REFERENCES RDSCollection (ID)*/ + RDSCollectionId INT, + ConnectionEnabled BIT NOT NULL DEFAULT(1) ) GO @@ -6746,13 +6745,6 @@ exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @Fil RETURN -IF NOT EXISTS(SELECT * FROM sys.columns - WHERE [name] = N'ConnectionEnabled' AND [object_id] = OBJECT_ID(N'RDSServers')) -BEGIN - ALTER TABLE [RDSServers] - ADD ConnectionEnabled BIT NOT NULL DEFAULT(1) -END - GO From bc94c24ca4e9f5f6e2cf292c40b46ffeecf2885a Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Thu, 11 Dec 2014 08:03:06 -0500 Subject: [PATCH 11/23] Added tag build-2.1.0.482 for changeset 20dfec5c2935 From 3ce626b25bf256953c2babbc587e8341a0482ec2 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Thu, 11 Dec 2014 11:04:06 -0500 Subject: [PATCH 12/23] Added tag build-2.1.0.483 for changeset f7bad7b81915 From 51f10187bae439e86bf919722b7c90a5926d7f8d Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Thu, 11 Dec 2014 11:29:29 -0500 Subject: [PATCH 13/23] Fix missing part in update_sql --- WebsitePanel/Database/update_db.sql | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/WebsitePanel/Database/update_db.sql b/WebsitePanel/Database/update_db.sql index 0554a15e..18ce713f 100644 --- a/WebsitePanel/Database/update_db.sql +++ b/WebsitePanel/Database/update_db.sql @@ -1,4 +1,5 @@ - +USE [${install.database}] +GO -- update database version DECLARE @build_version nvarchar(10), @build_date datetime SET @build_version = N'${release.version}' From ccb6edcaf0e0262db815c145049f0b9cd435ee91 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Thu, 11 Dec 2014 11:44:25 -0500 Subject: [PATCH 14/23] Added tag build-2.1.0.484 for changeset 1981ca6383a3 From 9540dc92fa4cf5d70f353d65f27079497d659ebd Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 12 Dec 2014 09:58:40 -0500 Subject: [PATCH 15/23] Added tag build-2.1.0.485 for changeset 064f6fcecdb6 From c752bb5b442692f00e84a3a0657f0fdc61c753bb Mon Sep 17 00:00:00 2001 From: dev_amdtel Date: Sun, 14 Dec 2014 16:54:02 +0400 Subject: [PATCH 16/23] wsp-10287 WebsitePanel.Server does not run under .net 2.0 --- ...WebsitePanel.Providers.Mail.IceWarp.csproj | 6 +- .../WebsitePanel.Providers.Web.IIs80.csproj | 8 +- .../Sources/WebsitePanel.Server/Web.config | 135 +++++++++--------- .../WebsitePanel.Server.csproj | 3 +- 4 files changed, 81 insertions(+), 71 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Mail.IceWarp/WebsitePanel.Providers.Mail.IceWarp.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.Mail.IceWarp/WebsitePanel.Providers.Mail.IceWarp.csproj index f6df0ed1..3389e9ec 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Mail.IceWarp/WebsitePanel.Providers.Mail.IceWarp.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Mail.IceWarp/WebsitePanel.Providers.Mail.IceWarp.csproj @@ -17,7 +17,7 @@ true full false - ..\WebsitePanel.Server\bin\ + ..\WebsitePanel.Server\bin\IceWarp\ DEBUG;TRACE prompt 4 @@ -25,7 +25,7 @@ pdbonly true - ..\WebsitePanel.Server\bin\ + ..\WebsitePanel.Server\bin\IceWarp\ TRACE prompt 4 @@ -48,10 +48,12 @@ {684C932A-6C75-46AC-A327-F3689D89EB42} WebsitePanel.Providers.Base + False {E91E52F3-9555-4D00-B577-2B1DBDD87CA7} WebsitePanel.Server.Utils + False diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs80/WebsitePanel.Providers.Web.IIs80.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs80/WebsitePanel.Providers.Web.IIs80.csproj index dd28ae8c..62f64039 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs80/WebsitePanel.Providers.Web.IIs80.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIs80/WebsitePanel.Providers.Web.IIs80.csproj @@ -17,7 +17,7 @@ true full false - ..\WebsitePanel.Server\bin\ + ..\WebsitePanel.Server\bin\IIs80\ DEBUG;TRACE prompt 4 @@ -25,7 +25,7 @@ pdbonly true - ..\WebsitePanel.Server\bin\ + ..\WebsitePanel.Server\bin\IIs80\ TRACE prompt 4 @@ -56,18 +56,22 @@ {684c932a-6c75-46ac-a327-f3689d89eb42} WebsitePanel.Providers.Base + False {9be0317d-e42e-4ff6-9a87-8c801f046ea1} WebsitePanel.Providers.Web.IIs60 + False {1b9dce85-c664-49fc-b6e1-86c63cab88d1} WebsitePanel.Providers.Web.IIs70 + False {e91e52f3-9555-4d00-b577-2b1dbdd87ca7} WebsitePanel.Server.Utils + False diff --git a/WebsitePanel/Sources/WebsitePanel.Server/Web.config b/WebsitePanel/Sources/WebsitePanel.Server/Web.config index f50b8202..d9d1bde5 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/Web.config +++ b/WebsitePanel/Sources/WebsitePanel.Server/Web.config @@ -1,46 +1,51 @@ - + -
-
-
+
+
+
+
+
+
+
+
- - - - - + + + + + - + - + - + - + - + @@ -48,85 +53,85 @@ - + - + - + - + - + - - - + + + - + - - - - + + + + - - + + - - - - + + + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + @@ -135,40 +140,40 @@ - - + + - + - - + + - - - - - - - + + + + + + + - - + + - - + + - + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Server/WebsitePanel.Server.csproj b/WebsitePanel/Sources/WebsitePanel.Server/WebsitePanel.Server.csproj index b21aac2d..8b1d2bb6 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/WebsitePanel.Server.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Server/WebsitePanel.Server.csproj @@ -17,7 +17,7 @@ 4.0 - v4.0 + v3.5 false @@ -79,7 +79,6 @@ - From 08de3dd3380a878dfcc607abc9c3a4e500003a57 Mon Sep 17 00:00:00 2001 From: "a.skorina" Date: Mon, 15 Dec 2014 11:35:56 +0300 Subject: [PATCH 17/23] scheduler installer fix --- .../Setup.SchedulerService/Product.wxs | 29 +++++++++++++++---- .../CustomAction.cs | 29 +++++++++++++++++++ 2 files changed, 52 insertions(+), 6 deletions(-) diff --git a/WebsitePanel.Installer/Sources/Setup.SchedulerService/Product.wxs b/WebsitePanel.Installer/Sources/Setup.SchedulerService/Product.wxs index 1fdff4cb..59fc493e 100644 --- a/WebsitePanel.Installer/Sources/Setup.SchedulerService/Product.wxs +++ b/WebsitePanel.Installer/Sources/Setup.SchedulerService/Product.wxs @@ -3,13 +3,23 @@ - + + bannrbmp - + + + + + + + @@ -95,7 +105,9 @@ - + (NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL") + + NOT Installed or REINSTALL @@ -103,8 +115,13 @@ - + + + + + + @@ -115,8 +132,8 @@ - - + + diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/CustomAction.cs b/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/CustomAction.cs index eff618a7..dbfaac3c 100644 --- a/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/CustomAction.cs +++ b/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/CustomAction.cs @@ -34,6 +34,7 @@ using System.IO; using System.Linq; using System.ServiceProcess; using System.Text.RegularExpressions; +using System.Threading; using Microsoft.Deployment.WindowsInstaller; using WebsitePanel.Setup; @@ -69,6 +70,14 @@ namespace WebsitePanel.SchedulerServiceInstaller return ActionResult.Success; } + [CustomAction] + public static ActionResult FinalizeUnInstall(Session session) + { + UnInstallService(); + + return ActionResult.Success; + } + private static void InstallService(string installFolder) { try @@ -93,6 +102,26 @@ namespace WebsitePanel.SchedulerServiceInstaller } } + private static void UnInstallService() + { + try + { + var schedulerService = + ServiceController.GetServices().FirstOrDefault( + s => s.DisplayName.Equals("WebsitePanel Scheduler", StringComparison.CurrentCultureIgnoreCase)); + + if (schedulerService != null) + { + StopService(schedulerService.ServiceName); + + SecurityUtils.DeleteService(schedulerService.ServiceName); + } + } + catch (Exception) + { + } + } + private static void ChangeCryptoKey(string installFolder) { string path = Path.Combine(installFolder.Replace("SchedulerService", "Enterprise Server"), "web.config"); From f2db06de56af22457433140356360deb3f8d5ba3 Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Mon, 15 Dec 2014 04:41:12 -0800 Subject: [PATCH 18/23] Add/Remove RDS Servers from collection --- .../RemoteDesktopServicesProxy.cs | 91 ++++++++++- .../RemoteDesktopServicesController.cs | 65 +++++++- .../esRemoteDesktopServices.asmx.cs | 10 +- .../IRemoteDesktopServices.cs | 1 + .../Windows2012.cs | 29 ++++ .../RemoteDesktopServicesProxy.cs | 73 +++++++++ .../RemoteDesktopServices.asmx.cs | 17 +++ .../ESModule_ControlsHierarchy.config | 1 + .../App_Data/WebsitePanel_Modules.config | 1 + .../WebsitePanel/Code/Helpers/RDSHelper.cs | 2 +- .../RDSEditCollection.ascx.resx | 144 ++++++++++++++++++ .../WebsitePanel/RDS/RDSCollections.ascx | 4 +- .../WebsitePanel/RDS/RDSCollections.ascx.cs | 5 + .../WebsitePanel/RDS/RDSEditCollection.ascx | 36 +++++ .../RDS/RDSEditCollection.ascx.cs | 42 +++++ .../RDS/RDSEditCollection.ascx.designer.cs | 87 +++++++++++ .../UserControls/RDSCollectionServers.ascx.cs | 34 ++++- .../WebsitePanel.Portal.Modules.csproj | 15 +- 18 files changed, 633 insertions(+), 24 deletions(-) create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/App_LocalResources/RDSEditCollection.ascx.resx create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx.designer.cs diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/RemoteDesktopServicesProxy.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/RemoteDesktopServicesProxy.cs index 2bad8a81..acccc914 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/RemoteDesktopServicesProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/RemoteDesktopServicesProxy.cs @@ -18,9 +18,8 @@ namespace WebsitePanel.EnterpriseServer { using System.Web.Services.Protocols; using System; using System.Diagnostics; - - using WebsitePanel.Providers.Common; using WebsitePanel.Providers.RemoteDesktopServices; + using WebsitePanel.Providers.Common; using WebsitePanel.Providers.HostedSolution; @@ -37,6 +36,8 @@ namespace WebsitePanel.EnterpriseServer { private System.Threading.SendOrPostCallback AddRdsCollectionOperationCompleted; + private System.Threading.SendOrPostCallback EditRdsCollectionOperationCompleted; + private System.Threading.SendOrPostCallback GetRdsCollectionsPagedOperationCompleted; private System.Threading.SendOrPostCallback RemoveRdsCollectionOperationCompleted; @@ -101,6 +102,9 @@ namespace WebsitePanel.EnterpriseServer { /// public event AddRdsCollectionCompletedEventHandler AddRdsCollectionCompleted; + /// + public event EditRdsCollectionCompletedEventHandler EditRdsCollectionCompleted; + /// public event GetRdsCollectionsPagedCompletedEventHandler GetRdsCollectionsPagedCompleted; @@ -302,6 +306,50 @@ namespace WebsitePanel.EnterpriseServer { } } + /// + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/EditRdsCollection", 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 ResultObject EditRdsCollection(int itemId, RdsCollection collection) { + object[] results = this.Invoke("EditRdsCollection", new object[] { + itemId, + collection}); + return ((ResultObject)(results[0])); + } + + /// + public System.IAsyncResult BeginEditRdsCollection(int itemId, RdsCollection collection, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("EditRdsCollection", new object[] { + itemId, + collection}, callback, asyncState); + } + + /// + public ResultObject EndEditRdsCollection(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((ResultObject)(results[0])); + } + + /// + public void EditRdsCollectionAsync(int itemId, RdsCollection collection) { + this.EditRdsCollectionAsync(itemId, collection, null); + } + + /// + public void EditRdsCollectionAsync(int itemId, RdsCollection collection, object userState) { + if ((this.EditRdsCollectionOperationCompleted == null)) { + this.EditRdsCollectionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnEditRdsCollectionOperationCompleted); + } + this.InvokeAsync("EditRdsCollection", new object[] { + itemId, + collection}, this.EditRdsCollectionOperationCompleted, userState); + } + + private void OnEditRdsCollectionOperationCompleted(object arg) { + if ((this.EditRdsCollectionCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.EditRdsCollectionCompleted(this, new EditRdsCollectionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + /// [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetRdsCollectionsPaged", 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 RdsCollectionPaged GetRdsCollectionsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { @@ -510,9 +558,10 @@ namespace WebsitePanel.EnterpriseServer { /// [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetOrganizationRdsServersPaged", 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 RdsServersPaged GetOrganizationRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { + public RdsServersPaged GetOrganizationRdsServersPaged(int itemId, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] System.Nullable collectionId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { object[] results = this.Invoke("GetOrganizationRdsServersPaged", new object[] { itemId, + collectionId, filterColumn, filterValue, sortColumn, @@ -522,9 +571,10 @@ namespace WebsitePanel.EnterpriseServer { } /// - public System.IAsyncResult BeginGetOrganizationRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) { + public System.IAsyncResult BeginGetOrganizationRdsServersPaged(int itemId, System.Nullable collectionId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("GetOrganizationRdsServersPaged", new object[] { itemId, + collectionId, filterColumn, filterValue, sortColumn, @@ -539,17 +589,18 @@ namespace WebsitePanel.EnterpriseServer { } /// - public void GetOrganizationRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { - this.GetOrganizationRdsServersPagedAsync(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows, null); + public void GetOrganizationRdsServersPagedAsync(int itemId, System.Nullable collectionId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { + this.GetOrganizationRdsServersPagedAsync(itemId, collectionId, filterColumn, filterValue, sortColumn, startRow, maximumRows, null); } /// - public void GetOrganizationRdsServersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) { + public void GetOrganizationRdsServersPagedAsync(int itemId, System.Nullable collectionId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) { if ((this.GetOrganizationRdsServersPagedOperationCompleted == null)) { this.GetOrganizationRdsServersPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationRdsServersPagedOperationCompleted); } this.InvokeAsync("GetOrganizationRdsServersPaged", new object[] { itemId, + collectionId, filterColumn, filterValue, sortColumn, @@ -1536,6 +1587,32 @@ namespace WebsitePanel.EnterpriseServer { } } + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + public delegate void EditRdsCollectionCompletedEventHandler(object sender, EditRdsCollectionCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class EditRdsCollectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal EditRdsCollectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public ResultObject Result { + get { + this.RaiseExceptionIfNecessary(); + return ((ResultObject)(this.results[0])); + } + } + } + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetRdsCollectionsPagedCompletedEventHandler(object sender, GetRdsCollectionsPagedCompletedEventArgs e); diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs index c3c154a7..471a6adb 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/RemoteDesktopServices/RemoteDesktopServicesController.cs @@ -68,6 +68,11 @@ namespace WebsitePanel.EnterpriseServer return AddRdsCollectionInternal(itemId, collection); } + public static ResultObject EditRdsCollection(int itemId, RdsCollection collection) + { + return EditRdsCollectionInternal(itemId, collection); + } + public static RdsCollectionPaged GetRdsCollectionsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { return GetRdsCollectionsPagedInternal(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows); @@ -93,9 +98,9 @@ namespace WebsitePanel.EnterpriseServer return GetFreeRdsServersPagedInternal(filterColumn, filterValue, sortColumn, startRow, maximumRows); } - public static RdsServersPaged GetOrganizationRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) + public static RdsServersPaged GetOrganizationRdsServersPaged(int itemId, int? collectionId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { - return GetOrganizationRdsServersPagedInternal(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows); + return GetOrganizationRdsServersPagedInternal(itemId, collectionId, filterColumn, filterValue, sortColumn, startRow, maximumRows); } public static RdsServersPaged GetOrganizationFreeRdsServersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) @@ -285,6 +290,58 @@ namespace WebsitePanel.EnterpriseServer return result; } + private static ResultObject EditRdsCollectionInternal(int itemId, RdsCollection collection) + { + var result = TaskManager.StartResultTask("REMOTE_DESKTOP_SERVICES", "EDIT_RDS_COLLECTION"); + + try + { + Organization org = OrganizationController.GetOrganization(itemId); + + if (org == null) + { + result.IsSuccess = false; + result.AddError("", new NullReferenceException("Organization not found")); + return result; + } + + var rds = GetRemoteDesktopServices(GetRemoteDesktopServiceID(org.PackageId)); + var existingServers = + ObjectUtils.CreateListFromDataReader(DataProvider.GetRDSServersByCollectionId(collection.Id)).ToList(); + var removedServers = existingServers.Where(x => !collection.Servers.Select(y => y.Id).Contains(x.Id)); + var newServers = collection.Servers.Where(x => !existingServers.Select(y => y.Id).Contains(x.Id)); + + foreach(var server in removedServers) + { + DataProvider.RemoveRDSServerFromCollection(server.Id); + } + + rds.AddRdsServersToDeployment(newServers.ToArray()); + + foreach (var server in newServers) + { + DataProvider.AddRDSServerToCollection(server.Id, collection.Id); + } + } + catch (Exception ex) + { + result.AddError("REMOTE_DESKTOP_SERVICES_ADD_RDS_COLLECTION", ex); + } + finally + { + if (!result.IsSuccess) + { + TaskManager.CompleteResultTask(result); + } + else + { + TaskManager.CompleteResultTask(); + } + } + + return result; + } + private static RdsCollectionPaged GetRdsCollectionsPagedInternal(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { DataSet ds = DataProvider.GetRDSCollectionsPaged(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows); @@ -425,9 +482,9 @@ namespace WebsitePanel.EnterpriseServer return result; } - private static RdsServersPaged GetOrganizationRdsServersPagedInternal(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) + private static RdsServersPaged GetOrganizationRdsServersPagedInternal(int itemId, int? collectionId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { - DataSet ds = DataProvider.GetRDSServersPaged(itemId, null, filterColumn, filterValue, sortColumn, startRow, maximumRows, ignoreRdsCollectionId: true); + DataSet ds = DataProvider.GetRDSServersPaged(itemId, collectionId, filterColumn, filterValue, sortColumn, startRow, maximumRows, ignoreRdsCollectionId: !collectionId.HasValue); RdsServersPaged result = new RdsServersPaged(); result.RecordsCount = (int)ds.Tables[0].Rows[0][0]; diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esRemoteDesktopServices.asmx.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esRemoteDesktopServices.asmx.cs index d86b9733..05baf26c 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esRemoteDesktopServices.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esRemoteDesktopServices.asmx.cs @@ -70,6 +70,12 @@ namespace WebsitePanel.EnterpriseServer return RemoteDesktopServicesController.AddRdsCollection(itemId, collection); } + [WebMethod] + public ResultObject EditRdsCollection(int itemId, RdsCollection collection) + { + return RemoteDesktopServicesController.EditRdsCollection(itemId, collection); + } + [WebMethod] public RdsCollectionPaged GetRdsCollectionsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) @@ -101,10 +107,10 @@ namespace WebsitePanel.EnterpriseServer } [WebMethod] - public RdsServersPaged GetOrganizationRdsServersPaged(int itemId, string filterColumn, string filterValue, + public RdsServersPaged GetOrganizationRdsServersPaged(int itemId, int? collectionId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { - return RemoteDesktopServicesController.GetOrganizationRdsServersPaged(itemId, filterColumn, filterValue, + return RemoteDesktopServicesController.GetOrganizationRdsServersPaged(itemId, collectionId, filterColumn, filterValue, sortColumn, startRow, maximumRows); } diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/IRemoteDesktopServices.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/IRemoteDesktopServices.cs index db2e114c..7a92294a 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/IRemoteDesktopServices.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/RemoteDesktopServices/IRemoteDesktopServices.cs @@ -40,6 +40,7 @@ namespace WebsitePanel.Providers.RemoteDesktopServices public interface IRemoteDesktopServices { bool CreateCollection(string organizationId, RdsCollection collection); + bool AddRdsServersToDeployment(RdsServer[] servers); RdsCollection GetCollection(string collectionName); bool RemoveCollection(string organizationId, string collectionName); bool SetUsersInCollection(string organizationId, string collectionName, List users); diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs index 1e8d85bc..b01884db 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.TerminalServices.Windows2012/Windows2012.cs @@ -169,6 +169,35 @@ namespace WebsitePanel.Providers.RemoteDesktopServices #region RDS Collections + public bool AddRdsServersToDeployment(RdsServer[] servers) + { + var result = true; + Runspace runSpace = null; + + try + { + runSpace = OpenRunspace(); + + foreach (var server in servers) + { + if (!ExistRdsServerInDeployment(runSpace, server)) + { + AddRdsServerToDeployment(runSpace, server); + } + } + } + catch (Exception e) + { + result = false; + } + finally + { + CloseRunspace(runSpace); + } + + return result; + } + public bool CreateCollection(string organizationId, RdsCollection collection) { var result = true; diff --git a/WebsitePanel/Sources/WebsitePanel.Server.Client/RemoteDesktopServicesProxy.cs b/WebsitePanel/Sources/WebsitePanel.Server.Client/RemoteDesktopServicesProxy.cs index 341c32cf..a78e54ae 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server.Client/RemoteDesktopServicesProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server.Client/RemoteDesktopServicesProxy.cs @@ -31,6 +31,8 @@ namespace WebsitePanel.Providers.RemoteDesktopServices { private System.Threading.SendOrPostCallback CreateCollectionOperationCompleted; + private System.Threading.SendOrPostCallback AddRdsServersToDeploymentOperationCompleted; + private System.Threading.SendOrPostCallback GetCollectionOperationCompleted; private System.Threading.SendOrPostCallback RemoveCollectionOperationCompleted; @@ -71,6 +73,9 @@ namespace WebsitePanel.Providers.RemoteDesktopServices { /// public event CreateCollectionCompletedEventHandler CreateCollectionCompleted; + /// + public event AddRdsServersToDeploymentCompletedEventHandler AddRdsServersToDeploymentCompleted; + /// public event GetCollectionCompletedEventHandler GetCollectionCompleted; @@ -164,6 +169,48 @@ namespace WebsitePanel.Providers.RemoteDesktopServices { } } + /// + [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] + [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/AddRdsServersToDeployment", 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 AddRdsServersToDeployment(RdsServer[] servers) { + object[] results = this.Invoke("AddRdsServersToDeployment", new object[] { + servers}); + return ((bool)(results[0])); + } + + /// + public System.IAsyncResult BeginAddRdsServersToDeployment(RdsServer[] servers, System.AsyncCallback callback, object asyncState) { + return this.BeginInvoke("AddRdsServersToDeployment", new object[] { + servers}, callback, asyncState); + } + + /// + public bool EndAddRdsServersToDeployment(System.IAsyncResult asyncResult) { + object[] results = this.EndInvoke(asyncResult); + return ((bool)(results[0])); + } + + /// + public void AddRdsServersToDeploymentAsync(RdsServer[] servers) { + this.AddRdsServersToDeploymentAsync(servers, null); + } + + /// + public void AddRdsServersToDeploymentAsync(RdsServer[] servers, object userState) { + if ((this.AddRdsServersToDeploymentOperationCompleted == null)) { + this.AddRdsServersToDeploymentOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddRdsServersToDeploymentOperationCompleted); + } + this.InvokeAsync("AddRdsServersToDeployment", new object[] { + servers}, this.AddRdsServersToDeploymentOperationCompleted, userState); + } + + private void OnAddRdsServersToDeploymentOperationCompleted(object arg) { + if ((this.AddRdsServersToDeploymentCompleted != null)) { + System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); + this.AddRdsServersToDeploymentCompleted(this, new AddRdsServersToDeploymentCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + /// [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetCollection", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] @@ -903,6 +950,32 @@ namespace WebsitePanel.Providers.RemoteDesktopServices { } } + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + public delegate void AddRdsServersToDeploymentCompletedEventHandler(object sender, AddRdsServersToDeploymentCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.ComponentModel.DesignerCategoryAttribute("code")] + public partial class AddRdsServersToDeploymentCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { + + private object[] results; + + internal AddRdsServersToDeploymentCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : + base(exception, cancelled, userState) { + this.results = results; + } + + /// + public bool Result { + get { + this.RaiseExceptionIfNecessary(); + return ((bool)(this.results[0])); + } + } + } + /// [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] public delegate void GetCollectionCompletedEventHandler(object sender, GetCollectionCompletedEventArgs e); diff --git a/WebsitePanel/Sources/WebsitePanel.Server/RemoteDesktopServices.asmx.cs b/WebsitePanel/Sources/WebsitePanel.Server/RemoteDesktopServices.asmx.cs index 91d8d444..d515b37a 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/RemoteDesktopServices.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.Server/RemoteDesktopServices.asmx.cs @@ -76,6 +76,23 @@ namespace WebsitePanel.Server } } + [WebMethod, SoapHeader("settings")] + public bool AddRdsServersToDeployment(RdsServer[] servers) + { + try + { + Log.WriteStart("'{0}' AddRdsServersToDeployment", ProviderSettings.ProviderName); + var result = RDSProvider.AddRdsServersToDeployment(servers); + Log.WriteEnd("'{0}' AddRdsServersToDeployment", ProviderSettings.ProviderName); + return result; + } + catch (Exception ex) + { + Log.WriteError(String.Format("'{0}' AddRdsServersToDeployment", ProviderSettings.ProviderName), ex); + throw; + } + } + [WebMethod, SoapHeader("settings")] public RdsCollection GetCollection(string collectionName) { diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/ESModule_ControlsHierarchy.config b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/ESModule_ControlsHierarchy.config index f2f41087..43015b80 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/ESModule_ControlsHierarchy.config +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/ESModule_ControlsHierarchy.config @@ -141,4 +141,5 @@ + diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config index b43e286a..239c3893 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config @@ -574,6 +574,7 @@ + diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/RDSHelper.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/RDSHelper.cs index f8197414..8b8f8f72 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/RDSHelper.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/RDSHelper.cs @@ -66,7 +66,7 @@ namespace WebsitePanel.Portal public RdsServer[] GetOrganizationRdsServersPaged(int itemId, int maximumRows, int startRowIndex, string sortColumn, string filterValue) { - rdsServers = ES.Services.RDS.GetOrganizationRdsServersPaged(itemId, "", filterValue, sortColumn, startRowIndex, maximumRows); + rdsServers = ES.Services.RDS.GetOrganizationRdsServersPaged(itemId, null, "", filterValue, sortColumn, startRowIndex, maximumRows); return rdsServers.Servers; } diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/App_LocalResources/RDSEditCollection.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/App_LocalResources/RDSEditCollection.ascx.resx new file mode 100644 index 00000000..a4a9dd20 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/App_LocalResources/RDSEditCollection.ascx.resx @@ -0,0 +1,144 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + ShowProgressDialog('Adding RDS Server ...'); + + + Save + + + + + + Edit RDS Collection + + + Edit RDS Collection + + + Collection Name + + + Server Name + + + No RDS Servers have been added yet. To add a new RDS Servers click "Add RDS Server" button. + + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSCollections.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSCollections.ascx index 7fc47b47..6c77a487 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSCollections.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSCollections.ascx @@ -47,8 +47,8 @@ - - + + <%# Eval("Name").ToString() %> diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSCollections.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSCollections.ascx.cs index 1842197e..2a58751d 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSCollections.ascx.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSCollections.ascx.cs @@ -111,5 +111,10 @@ namespace WebsitePanel.Portal.RDS "CollectionId=" + collectionId, "ItemID=" + PanelRequest.ItemID); } + + public string GetCollectionEditUrl(string collectionId) + { + return EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "rds_edit_collection", "CollectionId=" + collectionId, "ItemID=" + PanelRequest.ItemID); + } } } \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx new file mode 100644 index 00000000..f140dbe4 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx @@ -0,0 +1,36 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="RDSEditCollection.ascx.cs" Inherits="WebsitePanel.Portal.RDS.RDSEditCollection" %> +<%@ Register Src="../UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="wsp" %> +<%@ Register Src="../UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %> +<%@ Register Src="UserControls/RDSCollectionServers.ascx" TagName="CollectionServers" TagPrefix="wsp"%> + + + + +
+
+
+
+
+
+
+ + +
+
+ + +
+ +
+ +
+
+ +
+ +
+
+
+
+
+
\ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx.cs new file mode 100644 index 00000000..3f6c8e22 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx.cs @@ -0,0 +1,42 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using WebsitePanel.Providers.RemoteDesktopServices; + +namespace WebsitePanel.Portal.RDS +{ + public partial class RDSEditCollection : WebsitePanelModuleBase + { + protected void Page_Load(object sender, EventArgs e) + { + + } + + protected void btnSave_Click(object sender, EventArgs e) + { + if (!Page.IsValid) + return; + + try + { + if (servers.GetServers().Count < 1) + { + messageBox.ShowErrorMessage("RDS_CREATE_COLLECTION_RDSSERVER_REQUAIRED"); + return; + } + + RdsCollection collection = ES.Services.RDS.GetRdsCollection(PanelRequest.CollectionID); + collection.Servers = servers.GetServers(); + + ES.Services.RDS.EditRdsCollection(PanelRequest.ItemID, collection); + + Response.Redirect(EditUrl("ItemID", PanelRequest.ItemID.ToString(), "rds_collections", + "SpaceID=" + PanelSecurity.PackageId)); + } + catch { } + } + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx.designer.cs new file mode 100644 index 00000000..cd24985d --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/RDSEditCollection.ascx.designer.cs @@ -0,0 +1,87 @@ +//------------------------------------------------------------------------------ +// +// 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.RDS { + + + public partial class RDSEditCollection { + + /// + /// asyncTasks control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks; + + /// + /// imgAddRDSServer control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Image imgAddRDSServer; + + /// + /// locTitle control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Localize locTitle; + + /// + /// messageBox control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox; + + /// + /// RDSServersPanel control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl RDSServersPanel; + + /// + /// locRDSServersSection control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Localize locRDSServersSection; + + /// + /// servers control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::WebsitePanel.Portal.RDS.UserControls.RDSCollectionServers servers; + + /// + /// btnSave control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnSave; + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/UserControls/RDSCollectionServers.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/UserControls/RDSCollectionServers.ascx.cs index b3ca3c35..55d5eefd 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/UserControls/RDSCollectionServers.ascx.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/RDS/UserControls/RDSCollectionServers.ascx.cs @@ -53,19 +53,14 @@ namespace WebsitePanel.Portal.RDS.UserControls { BindServers(servers, false); } - - //public RdsServer[] GetServers() - //{ - // return GetGridViewServers(SelectedState.All).ToArray(); - //} - + public List GetServers() { return GetGridViewServers(SelectedState.All); } protected void Page_Load(object sender, EventArgs e) - { + { // register javascript if (!Page.ClientScript.IsClientScriptBlockRegistered("SelectAllCheckboxes")) { @@ -80,8 +75,14 @@ namespace WebsitePanel.Portal.RDS.UserControls Page.ClientScript.RegisterClientScriptBlock(typeof(RDSCollectionUsers), "SelectAllCheckboxes", script, true); } + + if (!IsPostBack && PanelRequest.CollectionID > 0) + { + BindOrganizationServers(); + } } + protected void btnAdd_Click(object sender, EventArgs e) { // bind all servers @@ -205,6 +206,25 @@ namespace WebsitePanel.Portal.RDS.UserControls } + protected void BindOrganizationServers() + { + RdsServer[] servers = ES.Services.RDS.GetOrganizationRdsServersPaged(PanelRequest.ItemID, PanelRequest.CollectionID, "FqdName", txtSearchValue.Text, null, 0, 1000).Servers; + Array.Sort(servers, CompareAccount); + + if (Direction == SortDirection.Ascending) + { + Array.Reverse(servers); + Direction = SortDirection.Descending; + } + else + { + Direction = SortDirection.Ascending; + } + + gvServers.DataSource = servers; + gvServers.DataBind(); + } + protected void cmdSearch_Click(object sender, ImageClickEventArgs e) { BindPopupServers(); 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 25d1e885..b3c91a22 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj @@ -239,6 +239,13 @@ AddRDSServer.ascx + + RDSEditCollection.ascx + ASPXCodeBehind + + + RDSEditCollection.ascx + RDSEditCollectionApps.ascx ASPXCodeBehind @@ -4267,6 +4274,7 @@ + @@ -4277,6 +4285,9 @@ + + Designer + ResXFileCodeGenerator DomainLookupView.ascx.Designer.cs @@ -5584,7 +5595,9 @@ Designer - + + Designer + From 912c0dfe7ca82d0f419c57a51fc914ecaa7ad1ce Mon Sep 17 00:00:00 2001 From: dev_amdtel Date: Mon, 15 Dec 2014 20:46:06 +0400 Subject: [PATCH 19/23] wsp-10288 Remove "LocationDrive" In settings providers WebsitePanel.Providers.OS.Windows* --- WebsitePanel/Database/update_db.sql | 9 +- .../Packages/PackageController.cs | 4 +- .../Windows2012.cs | 6 +- .../Windows2012_Settings.ascx.resx | 126 ++++++++++++++++++ .../Windows2012_Settings.ascx | 25 ++++ .../Windows2012_Settings.ascx.cs | 79 +++++++++++ .../Windows2012_Settings.ascx.designer.cs | 51 +++++++ .../WebsitePanel.Portal.Modules.csproj | 11 ++ 8 files changed, 307 insertions(+), 4 deletions(-) create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/App_LocalResources/Windows2012_Settings.ascx.resx create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx.designer.cs diff --git a/WebsitePanel/Database/update_db.sql b/WebsitePanel/Database/update_db.sql index e49c09d8..f9247f44 100644 --- a/WebsitePanel/Database/update_db.sql +++ b/WebsitePanel/Database/update_db.sql @@ -6910,4 +6910,11 @@ SET RDSCollectionId = @RDSCollectionId, ConnectionEnabled = @ConnectionEnabled WHERE ID = @Id -GO \ No newline at end of file +GO + + +-- fix Windows 2012 Provider +BEGIN +UPDATE [dbo].[Providers] SET [EditorControl] = 'Windows2012' WHERE [ProviderName] = 'Windows2012' +END +GO diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs index e9f2f848..623b6a08 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs @@ -980,11 +980,13 @@ namespace WebsitePanel.EnterpriseServer homeFolder.PackageId = packageId; homeFolder.Name = path; + int res = AddPackageItem(homeFolder); + // Added By Haya UpdatePackageHardQuota(packageId); // save package item - return AddPackageItem(homeFolder); + return res; } public static DateTime GetPackageBandwidthUpdate(int packageId) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.OS.Windows2012/Windows2012.cs b/WebsitePanel/Sources/WebsitePanel.Providers.OS.Windows2012/Windows2012.cs index 2622425f..010e6ee5 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.OS.Windows2012/Windows2012.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.OS.Windows2012/Windows2012.cs @@ -80,10 +80,12 @@ namespace WebsitePanel.Providers.OS { Log.WriteStart("SetQuotaLimitOnFolder"); Log.WriteInfo("FolderPath : {0}", folderPath); - Log.WriteInfo("ShareNameDrive : {0}", shareNameDrive); Log.WriteInfo("QuotaLimit : {0}", quotaLimit); - string path = Path.Combine(shareNameDrive + @":\", folderPath); + string path = folderPath; + + if (shareNameDrive != null) + path = Path.Combine(shareNameDrive + @":\", folderPath); Runspace runSpace = null; try diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/App_LocalResources/Windows2012_Settings.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/App_LocalResources/Windows2012_Settings.ascx.resx new file mode 100644 index 00000000..79e96a34 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/App_LocalResources/Windows2012_Settings.ascx.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + Enable Hard Quota: + + + Hosting Spaces Folder: + + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx new file mode 100644 index 00000000..89306fa7 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx @@ -0,0 +1,25 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Windows2012_Settings.ascx.cs" Inherits="WebsitePanel.Portal.ProviderControls.Windows2012_Settings" %> + + + + + + + + + +
+ + +
+ + + + + + + +
+
+
+
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx.cs new file mode 100644 index 00000000..216d5521 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx.cs @@ -0,0 +1,79 @@ +// Copyright (c) 2014, 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.Data; +using System.Configuration; +using System.Collections; +using System.Collections.Specialized; +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.ProviderControls +{ + public partial class Windows2012_Settings : WebsitePanelControlBase, IHostingServiceProviderSettings + { + protected void Page_Load(object sender, EventArgs e) + { + //CO Changes + if (!IsPostBack) + { + try + { + chkEnableHardQuota.Enabled = ES.Services.OperatingSystems.CheckFileServicesInstallation(PanelRequest.ServiceId); + if (!chkEnableHardQuota.Enabled) + lblFileServiceInfo.Visible = true; + } + catch + { + } + } + //END + } + + public void BindSettings(StringDictionary settings) + { + txtFolder.Text = settings["UsersHome"]; + //CO Changes + chkEnableHardQuota.Checked = settings["EnableHardQuota"] == "true" ? true : false; + //END + } + + public void SaveSettings(StringDictionary settings) + { + settings["UsersHome"] = txtFolder.Text; + //CO Changes + settings["EnableHardQuota"] = chkEnableHardQuota.Checked.ToString().ToLower(); + //END + } + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx.designer.cs new file mode 100644 index 00000000..cb25aa41 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ProviderControls/Windows2012_Settings.ascx.designer.cs @@ -0,0 +1,51 @@ +//------------------------------------------------------------------------------ +// +// 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.ProviderControls { + + + public partial class Windows2012_Settings { + + /// + /// lblSpacesFolder control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblSpacesFolder; + + /// + /// txtFolder control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox txtFolder; + + /// + /// chkEnableHardQuota control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.CheckBox chkEnableHardQuota; + + /// + /// lblFileServiceInfo control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblFileServiceInfo; + } +} 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 25d1e885..789796e1 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj @@ -211,6 +211,13 @@ + + Windows2012_Settings.ascx + ASPXCodeBehind + + + Windows2012_Settings.ascx + RDSServersAddserver.ascx ASPXCodeBehind @@ -4263,6 +4270,7 @@ + @@ -4277,6 +4285,9 @@ + + Designer + ResXFileCodeGenerator DomainLookupView.ascx.Designer.cs From 53c36c0a5542a89ac32ff960882fcd1ccd36e424 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Mon, 15 Dec 2014 15:41:36 -0500 Subject: [PATCH 20/23] Added tag build-2.1.0.486 for changeset 4e999e4e0045 From 9f148ebad32547d3aba00860d17ba291d11a192f Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Mon, 15 Dec 2014 15:47:50 -0500 Subject: [PATCH 21/23] Fix error in project --- .../WebsitePanel/WebsitePanel.Portal.Modules.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 51643646..cbc1312c 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/WebsitePanel.Portal.Modules.csproj @@ -4293,8 +4293,8 @@ - - + + Designer From 1b69fc4eaac055e31d09ddb6dcbc74b39cdbba55 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Mon, 15 Dec 2014 15:54:02 -0500 Subject: [PATCH 22/23] Added tag build-2.1.0.488 for changeset d7998c30d139 From 53aff75c14a2016bdf8d4154cc1677d8f360a3da Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Tue, 16 Dec 2014 00:33:10 -0500 Subject: [PATCH 23/23] Added tag build-2.1.0.489 for changeset 9a85bb8a77f8