diff options
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/MachineStudioWebClientBase.cs')
| -rw-r--r-- | Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/MachineStudioWebClientBase.cs | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/MachineStudioWebClientBase.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/MachineStudioWebClientBase.cs new file mode 100644 index 000000000..dc5a14856 --- /dev/null +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/MachineStudioWebClientBase.cs @@ -0,0 +1,79 @@ + +using System.Threading.Tasks; +using Tango.Web; +using Tango.Web.Authentication; + +namespace Tango.MachineStudio.Common.Web +{ + /// <summary> + /// Represents a machine service MachineStudio web client. + /// </summary> + /// <seealso cref="Tango.Web.TangoWebClient" /> + public abstract class MachineStudioWebClientBase : TangoWebClient<Tango.MachineStudio.Common.Web.LoginRequest, Tango.MachineStudio.Common.Web.LoginResponse> + { + /// <summary> + /// Initializes a new instance of the <see cref="MachineStudioWebClientBase"/> class. + /// </summary> + /// <param name="environment">The environment.</param> + /// <param name="token">Existing token.</param> + public MachineStudioWebClientBase(DeploymentSlot environment, WebToken token) : base(environment, "MachineStudio", token) + { + + } + + /// <summary> + /// Initializes a new instance of the <see cref="MachineStudioWebClientBase"/> class. + /// </summary> + /// <param name="environment">The environment.</param> + public MachineStudioWebClientBase(DeploymentSlot environment) : this(environment, null) + { + + } + + /// <summary> + /// Executes the CheckForUpdates action and returns Tango.MachineStudio.Common.Web.CheckForUpdatesResponse. + /// </summary> + /// <returns></returns> + public Task<Tango.MachineStudio.Common.Web.CheckForUpdatesResponse> CheckForUpdates(Tango.MachineStudio.Common.Web.CheckForUpdatesRequest request) + { + return Post<Tango.MachineStudio.Common.Web.CheckForUpdatesRequest, Tango.MachineStudio.Common.Web.CheckForUpdatesResponse>("CheckForUpdates", request); + } + + /// <summary> + /// Executes the DownloadLatestVersion action and returns Tango.MachineStudio.Common.Web.DownloadLatestVersionResponse. + /// </summary> + /// <returns></returns> + public Task<Tango.MachineStudio.Common.Web.DownloadLatestVersionResponse> DownloadLatestVersion(Tango.MachineStudio.Common.Web.DownloadLatestVersionRequest request) + { + return Post<Tango.MachineStudio.Common.Web.DownloadLatestVersionRequest, Tango.MachineStudio.Common.Web.DownloadLatestVersionResponse>("DownloadLatestVersion", request); + } + + /// <summary> + /// Executes the UploadVersion action and returns Tango.MachineStudio.Common.Web.UploadVersionResponse. + /// </summary> + /// <returns></returns> + public Task<Tango.MachineStudio.Common.Web.UploadVersionResponse> UploadVersion(Tango.MachineStudio.Common.Web.UploadVersionRequest request) + { + return Post<Tango.MachineStudio.Common.Web.UploadVersionRequest, Tango.MachineStudio.Common.Web.UploadVersionResponse>("UploadVersion", request); + } + + /// <summary> + /// Executes the NotifyUploadCompleted action and returns Tango.MachineStudio.Common.Web.UploadCompletedResponse. + /// </summary> + /// <returns></returns> + public Task<Tango.MachineStudio.Common.Web.UploadCompletedResponse> NotifyUploadCompleted(Tango.MachineStudio.Common.Web.UploadCompletedRequest request) + { + return Post<Tango.MachineStudio.Common.Web.UploadCompletedRequest, Tango.MachineStudio.Common.Web.UploadCompletedResponse>("NotifyUploadCompleted", request); + } + + /// <summary> + /// Executes the GetLatestVersion action and returns Tango.MachineStudio.Common.Web.LatestVersionResponse. + /// </summary> + /// <returns></returns> + public Task<Tango.MachineStudio.Common.Web.LatestVersionResponse> GetLatestVersion(Tango.MachineStudio.Common.Web.LatestVersionRequest request) + { + return Post<Tango.MachineStudio.Common.Web.LatestVersionRequest, Tango.MachineStudio.Common.Web.LatestVersionResponse>("GetLatestVersion", request); + } + + } +} |
