diff options
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.cs | 59 |
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(); } } |
