using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Tango.MachineStudio.Common.Authentication; using Tango.Settings; using Tango.Transport.Web; using Tango.Web; namespace Tango.MachineStudio.Common.Web { public class MachineStudioWebService : IMachineStudioWebService { private WebTransportClient _client; public DeploymentSlot Environment { get; set; } public MachineStudioWebService() { Environment = SettingsManager.Default.GetOrCreate().DeploymentSlot; _client = new WebTransportClient(); } public Task CheckForUpdates(CheckForUpdatesRequest request) { return _client.PostJson(GetAddress() + "CheckForUpdates", request); } public Task UploadVersion(UploadVersionRequest request) { return _client.PostJson(GetAddress() + "UploadVersion", request); } public Task NotifyUploadCompleted(UploadCompletedRequest request) { return _client.PostJson(GetAddress() + "NotifyUploadCompleted", request); } public Task GetLatestVersion(LatestVersionRequest request) { return _client.PostJson(GetAddress() + "GetLatestVersion", request); } public Task DownloadLatestVersion(DownloadLatestVersionRequest request) { return _client.PostJson(GetAddress() + "DownloadLatestVersion", request); } public Task Login(LoginRequest request) { return _client.PostJson(GetAddress() + "Login", request); } private String GetAddress() { return Environment.ToAddress() + "/api/MachineStudio/"; } } }