aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/Web/PPCWebService.cs
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2019-02-18 16:58:37 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2019-02-18 16:58:37 +0200
commit473d878e3ae795201223b160fcbc1147e901b038 (patch)
treefaedd2a3fa181deb297ec2232a171289161738f7 /Software/Visual_Studio/PPC/Tango.PPC.Common/Web/PPCWebService.cs
parentccc6add5ea66565453283d7df0f6fbf2324b9264 (diff)
downloadTango-473d878e3ae795201223b160fcbc1147e901b038.tar.gz
Tango-473d878e3ae795201223b160fcbc1147e901b038.zip
Working on PPC versioning services...
Diffstat (limited to 'Software/Visual_Studio/PPC/Tango.PPC.Common/Web/PPCWebService.cs')
-rw-r--r--Software/Visual_Studio/PPC/Tango.PPC.Common/Web/PPCWebService.cs79
1 files changed, 79 insertions, 0 deletions
diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/Web/PPCWebService.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/Web/PPCWebService.cs
new file mode 100644
index 000000000..02821e8d4
--- /dev/null
+++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/Web/PPCWebService.cs
@@ -0,0 +1,79 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Tango.Settings;
+using Tango.Transport.Web;
+using Tango.Web;
+
+namespace Tango.PPC.Common.Web
+{
+ public class PPCWebService : IPPCWebService
+ {
+ private WebTransportClient _client;
+
+ public DeploymentSlot Environment { get; set; }
+
+ public PPCWebService()
+ {
+ _client = new WebTransportClient();
+ Environment = SettingsManager.Default.GetOrCreate<PPCSettings>().DeploymentSlot;
+ }
+
+ private String GetAddress()
+ {
+ return Environment.ToAddress() + "/api/PPC/";
+ }
+
+ public Task<UploadVersionResponse> UploadVersion(UploadVersionRequest request)
+ {
+ return _client.PostJson<UploadVersionRequest, UploadVersionResponse>(GetAddress() + "UploadVersion", request);
+ }
+
+ public Task<UploadCompletedResponse> NotifyUploadCompleted(UploadCompletedRequest request)
+ {
+ return _client.PostJson<UploadCompletedRequest, UploadCompletedResponse>(GetAddress() + "NotifyUploadCompleted", request);
+ }
+
+ public Task<LatestVersionResponse> GetLatestVersion(LatestVersionRequest request)
+ {
+ return _client.PostJson<LatestVersionRequest, LatestVersionResponse>(GetAddress() + "GetLatestVersion", request);
+ }
+
+ public Task<MachineVersionsResponse> GetMachineVersions()
+ {
+ return _client.PostJson<MachineVersionsRequest, MachineVersionsResponse>(GetAddress() + "GetMachineVersions", new MachineVersionsRequest());
+ }
+
+ public Task<CheckForUpdateResponse> CheckForUpdate(CheckForUpdateRequest request)
+ {
+ return _client.PostJson<CheckForUpdateRequest, CheckForUpdateResponse>(GetAddress() + "CheckForUpdate", request);
+ }
+
+ public Task<DownloadUpdateResponse> MachineUpdate(DownloadUpdateRequest request)
+ {
+ return _client.PostJson<DownloadUpdateRequest, DownloadUpdateResponse>(GetAddress() + "MachineUpdate", request);
+ }
+
+ public Task<MachineSetupResponse> MachineSetup(MachineSetupRequest request)
+ {
+ return _client.PostJson<MachineSetupRequest, MachineSetupResponse>(GetAddress() + "MachineSetup", request);
+ }
+
+ public Task<UpdateDBResponse> UpdateDB(UpdateDBRequest request)
+ {
+ return _client.PostJson<UpdateDBRequest, UpdateDBResponse>(GetAddress() + "UpdateDB", request);
+ }
+
+ public Task<LoginResponse> Login(LoginRequest request)
+ {
+ return _client.PostJson<LoginRequest, LoginResponse>(GetAddress() + "Login", request);
+ }
+
+ public void Dispose()
+ {
+ _client.Dispose();
+ }
+ }
+}