using System;
using System.Threading.Tasks;
using Tango.Web;
namespace Tango.PPC.Common.Web
{
/// <summary>
/// Represents a machine service PPC web client.
/// </summary>
/// <seealso cref="Tango.Web.TangoWebClient" />
public abstract class PPCWebClientBase : TangoWebClient<Tango.PPC.Common.Web.LoginRequest, Tango.PPC.Common.Web.LoginResponse>
{
/// <summary>
/// Initializes a new instance of the <see cref="PPCWebClientBase"/> class.
/// </summary>
/// <param name="environment">The environment.</param>
/// <param name="token">Existing token.</param>
public PPCWebClientBase(DeploymentSlot environment, String token) : base(environment, "PPC", token)
{
}
/// <summary>
/// Initializes a new instance of the <see cref="PPCWebClientBase"/> class.
/// </summary>
/// <param name="environment">The environment.</param>
public PPCWebClientBase(DeploymentSlot environment) : this(environment, null)
{
}
/// <summary>
/// Initializes a new instance of the <see cref="PPCWebClientBase"/> class.
/// </summary>
/// <param name="address">The service address.</param>
/// <param name="token">Existing token.</param>
public PPCWebClientBase(String address, String token) : base(address, "PPC", token)
{
}
/// <summary>
/// Initializes a new instance of the <see cref="PPCWebClientBase"/> class.
/// </summary>
/// <param name="cloned">Other instance.</param>
public PPCWebClientBase(PPCWebClientBase cloned) : base(cloned)
{
}
/// <summary>
/// Executes the MachineSetup action and returns Tango.PPC.Common.Web.MachineSetupResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.MachineSetupResponse> MachineSetup(Tango.PPC.Common.Web.MachineSetupRequest request)
{
return Post<Tango.PPC.Common.Web.MachineSetupRequest, Tango.PPC.Common.Web.MachineSetupResponse>("MachineSetup", request);
}
/// <summary>
/// Executes the MachineUpdate action and returns Tango.PPC.Common.Web.DownloadUpdateResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.DownloadUpdateResponse> MachineUpdate(Tango.PPC.Common.Web.DownloadUpdateRequest request)
{
return Post<Tango.PPC.Common.Web.DownloadUpdateRequest, Tango.PPC.Common.Web.DownloadUpdateResponse>("MachineUpdate", request);
}
/// <summary>
/// Executes the NotifyUpdateCompleted action and returns Tango.PPC.Common.Web.MachineUpdateCompletedResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.MachineUpdateCompletedResponse> NotifyUpdateCompleted(Tango.PPC.Common.Web.MachineUpdateCompletedRequest request)
{
return Post<Tango.PPC.Common.Web.MachineUpdateCompletedRequest, Tango.PPC.Common.Web.MachineUpdateCompletedResponse>("NotifyUpdateCompleted", request);
}
/// <summary>
/// Executes the CheckForUpdates action and returns Tango.PPC.Common.Web.CheckForUpdateResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.CheckForUpdateResponse> CheckForUpdates(Tango.PPC.Common.Web.CheckForUpdateRequest request)
{
return Post<Tango.PPC.Common.Web.CheckForUpdateRequest, Tango.PPC.Common.Web.CheckForUpdateResponse>("CheckForUpdates", request);
}
/// <summary>
/// Executes the UpdateDB action and returns Tango.PPC.Common.Web.UpdateDBResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.UpdateDBResponse> UpdateDB(Tango.PPC.Common.Web.UpdateDBRequest request)
{
return Post<Tango.PPC.Common.Web.UpdateDBRequest, Tango.PPC.Common.Web.UpdateDBResponse>("UpdateDB", request);
}
/// <summary>
/// Executes the UploadMachineData action and returns Tango.PPC.Common.Web.UploadMachineDataResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.UploadMachineDataResponse> UploadMachineData(Tango.PPC.Common.Web.UploadMachineDataRequest request)
{
return Post<Tango.PPC.Common.Web.UploadMachineDataRequest, Tango.PPC.Common.Web.UploadMachineDataResponse>("UploadMachineData", request);
}
/// <summary>
/// Executes the DownloadMachineData action and returns Tango.PPC.Common.Web.DownloadMachineDataResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.DownloadMachineDataResponse> DownloadMachineData(Tango.PPC.Common.Web.DownloadMachineDataRequest request)
{
return Post<Tango.PPC.Common.Web.DownloadMachineDataRequest, Tango.PPC.Common.Web.DownloadMachineDataResponse>("DownloadMachineData", request);
}
/// <summary>
/// Executes the NotifyMachineDataDownloadCompleted action and returns Tango.PPC.Common.Web.NotifyMachineDataDownloadCompletedResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.NotifyMachineDataDownloadCompletedResponse> NotifyMachineDataDownloadCompleted(Tango.PPC.Common.Web.NotifyMachineDataDownloadCompletedRequest request)
{
return Post<Tango.PPC.Common.Web.NotifyMachineDataDownloadCompletedRequest, Tango.PPC.Common.Web.NotifyMachineDataDownloadCompletedResponse>("NotifyMachineDataDownloadCompleted", request);
}
/// <summary>
/// Executes the GetLatestVersion action and returns Tango.PPC.Common.Web.LatestVersionResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.LatestVersionResponse> GetLatestVersion(Tango.PPC.Common.Web.LatestVersionRequest request)
{
return Post<Tango.PPC.Common.Web.LatestVersionRequest, Tango.PPC.Common.Web.LatestVersionResponse>("GetLatestVersion", request);
}
/// <summary>
/// Executes the UploadVersion action and returns Tango.PPC.Common.Web.UploadVersionResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.UploadVersionResponse> UploadVersion(Tango.PPC.Common.Web.UploadVersionRequest request)
{
return Post<Tango.PPC.Common.Web.UploadVersionRequest, Tango.PPC.Common.Web.UploadVersionResponse>("UploadVersion", request);
}
/// <summary>
/// Executes the NotifyVersionUploadCompleted action and returns Tango.PPC.Common.Web.UploadCompletedResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.UploadCompletedResponse> NotifyVersionUploadCompleted(Tango.PPC.Common.Web.UploadCompletedRequest request)
{
return Post<Tango.PPC.Common.Web.UploadCompletedRequest, Tango.PPC.Common.Web.UploadCompletedResponse>("NotifyVersionUploadCompleted", request);
}
/// <summary>
/// Executes the GetMachineVersions action and returns Tango.PPC.Common.Web.MachineVersionsResponse.
/// </summary>
/// <returns></returns>
public Task<Tango.PPC.Common.Web.MachineVersionsResponse> GetMachineVersions(Tango.PPC.Common.Web.MachineVersionsRequest request)
{
return Post<Tango.PPC.Common.Web.MachineVersionsRequest, Tango.PPC.Common.Web.MachineVersionsResponse>("GetMachineVersions", request);
}
}
}