aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineUpdate/IMachineUpdateManager.cs
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy@twine-s.com>2020-12-30 15:11:34 +0000
committerRoy Ben Shabat <Roy@twine-s.com>2020-12-30 15:11:34 +0000
commitd33c19b3ac6803de4b5c8d475832efef131c1a45 (patch)
treeea725abc39def99a755b041c13cba1fe0d594ddc /Software/Visual_Studio/PPC/Tango.PPC.Common/MachineUpdate/IMachineUpdateManager.cs
parent1bdcaa9f51303bbff682507f31fb3b4414692ca4 (diff)
downloadTango-d33c19b3ac6803de4b5c8d475832efef131c1a45.tar.gz
Tango-d33c19b3ac6803de4b5c8d475832efef131c1a45.zip
Revert "Hope it is fine"
Diffstat (limited to 'Software/Visual_Studio/PPC/Tango.PPC.Common/MachineUpdate/IMachineUpdateManager.cs')
-rw-r--r--Software/Visual_Studio/PPC/Tango.PPC.Common/MachineUpdate/IMachineUpdateManager.cs59
1 files changed, 48 insertions, 11 deletions
diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineUpdate/IMachineUpdateManager.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineUpdate/IMachineUpdateManager.cs
index 85d61d4cc..7c835165f 100644
--- a/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineUpdate/IMachineUpdateManager.cs
+++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineUpdate/IMachineUpdateManager.cs
@@ -4,12 +4,27 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.PMR.Synchronization;
+using Tango.PPC.Common.Publish;
+using Tango.PPC.Common.UpdatePackages;
using Tango.PPC.Common.Web;
namespace Tango.PPC.Common.MachineUpdate
{
public interface IMachineUpdateManager
{
+ /// <summary>
+ /// Occurs when an application update is available.
+ /// </summary>
+ event EventHandler<CheckForUpdateResponse> UpdateAvailable;
+
+ /// <summary>
+ /// Gets or sets a value indicating whether to automatically check for new application updates.
+ /// </summary>
+ bool EnableAutoCheckForUpdates { get; set; }
+
+ /// <summary>
+ /// Gets the current machine update progress status.
+ /// </summary>
MachineUpdateProgress Status { get; }
/// <summary>
@@ -23,46 +38,68 @@ namespace Tango.PPC.Common.MachineUpdate
event EventHandler<MachineUpdateProgress> Progress;
/// <summary>
- /// Performs a machine update using the specified serial number and machine service address.
+ /// Performs a machine update.
/// </summary>
- /// <param name="serialNumber">The serial number.</param>
/// <param name="setupFirmware">if set to <c>true</c> updates the embedded device firmware.</param>
/// <param name="setupFPGA">if set to <c>true</c> updates the embedded device FPGA version and other parameters.</param>
/// <returns></returns>
- Task<MachineUpdateResult> Update(String serialNumber, bool setupFirmware, bool setupFPGA);
+ Task<MachineUpdateResult> Update(bool setupFirmware, bool setupFPGA);
/// <summary>
/// Performs a machine update using the specified software update package path.
/// </summary>
/// <param name="fileName">Name of the file.</param>
/// <returns></returns>
- Task<MachineUpdateResult> UpdateFromTUP(String fileName);
+ Task<MachineUpdateResult> UpdateFromTUP(String fileName, bool setupFirmware, bool setupFPGA);
+
+ /// <summary>
+ /// Performs a firmware upgrade from the specified TFP file.
+ /// </summary>
+ /// <param name="fileName">Name of the file.</param>
+ /// <returns></returns>
+ Task UpdateFromTFP(String fileName);
/// <summary>
- /// Checks if any update are available for the specified machine serial number.
+ /// Checks if any update are available.
/// </summary>
- /// <param name="serialNumber">The serial number.</param>
/// <returns></returns>
- Task<CheckForUpdateResponse> CheckForUpdate(String serialNumber);
+ Task<CheckForUpdateResponse> CheckForUpdate();
/// <summary>
/// Checks whether it is necessary to updates all the "overwrite-able" database tables.
/// </summary>
- /// <param name="serialNumber">The serial number.</param>
/// <returns></returns>
- Task<DbCompareResult> UpdateDBCheck(String serialNumber);
+ Task<DbCompareResult> UpdateDBCheck();
/// <summary>
/// Updates all the "overwrite-able" database tables.
/// </summary>
/// <returns></returns>
- Task UpdateDB(DbCompareResult dbCompareResult, String serialNumber);
+ Task UpdateDB(DbCompareResult dbCompareResult);
/// <summary>
/// Gets the update package file information.
/// </summary>
/// <param name="filePath">The file path.</param>
/// <returns></returns>
- Task<UpdatePackageFile> GetUpdatePackageFileInfo(String filePath);
+ Task<PublishInfo> GetUpdatePackageFileInfo(String filePath);
+
+ /// <summary>
+ /// Checks whether any post update packages needs to be installed.
+ /// </summary>
+ /// <returns></returns>
+ Task<bool> PostUpdatePackagesRequired();
+
+ /// <summary>
+ /// Runs all post update packages.
+ /// </summary>
+ /// <returns></returns>
+ Task<PackageRunnerResult> RunPostUpdatePackages();
+
+ /// <summary>
+ /// Restores the last database backup.
+ /// </summary>
+ /// <returns></returns>
+ Task RestoreLastDatabaseBackup();
}
}