aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/BackupRestore
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy.mail.net@gmail.com>2021-05-10 03:23:52 +0300
committerRoy Ben Shabat <Roy.mail.net@gmail.com>2021-05-10 03:23:52 +0300
commitf6ba463706eeb49ecd795d3d68142e19cb669061 (patch)
tree9d5d841f7541579f99b19f7ecc574bc4f86ca6b9 /Software/Visual_Studio/PPC/Tango.PPC.Common/BackupRestore
parent8d5f3040d4a7f752af6f147ca805c0e9a76993b2 (diff)
downloadTango-f6ba463706eeb49ecd795d3d68142e19cb669061.tar.gz
Tango-f6ba463706eeb49ecd795d3d68142e19cb669061.zip
Added TangoUpdate to Full Restore on PPC.
Diffstat (limited to 'Software/Visual_Studio/PPC/Tango.PPC.Common/BackupRestore')
-rw-r--r--Software/Visual_Studio/PPC/Tango.PPC.Common/BackupRestore/DefaultBackupManager.cs30
1 files changed, 30 insertions, 0 deletions
diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/BackupRestore/DefaultBackupManager.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/BackupRestore/DefaultBackupManager.cs
index d32df734d..1462e1490 100644
--- a/Software/Visual_Studio/PPC/Tango.PPC.Common/BackupRestore/DefaultBackupManager.cs
+++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/BackupRestore/DefaultBackupManager.cs
@@ -20,6 +20,7 @@ using Tango.BL.Entities;
using Tango.PPC.Common.Authentication;
using Tango.Integration.Upgrade;
using Tango.Core.IO;
+using Tango.BL.Enumerations;
namespace Tango.PPC.Common.BackupRestore
{
@@ -524,6 +525,7 @@ namespace Tango.PPC.Common.BackupRestore
OnProgress(BackupRestoreStage.RestoringFirmware, 100, 100, false);
stream.Dispose();
LogManager.Log("Full backup restored successfully.");
+ UpdateTangoVersionAfterRestore(backupFile);
OnProgress(BackupRestoreStage.Done, 100, 100, false);
completionSource.SetResult(restoreResult);
};
@@ -540,6 +542,7 @@ namespace Tango.PPC.Common.BackupRestore
else
{
LogManager.Log("Firmware package file not found, skipping...");
+ UpdateTangoVersionAfterRestore(backupFile);
OnProgress(BackupRestoreStage.Done, 100, 100, false);
completionSource.SetResult(restoreResult);
}
@@ -554,6 +557,33 @@ namespace Tango.PPC.Common.BackupRestore
return completionSource.Task;
}
+ private void UpdateTangoVersionAfterRestore(BackupFile backupFile)
+ {
+ LogManager.Log("Creating a new TangoUpdate entry after successful restore...");
+ try
+ {
+ using (ObservablesContext db = ObservablesContext.CreateDefault())
+ {
+ db.TangoUpdates.Add(new TangoUpdate()
+ {
+ EndDate = DateTime.UtcNow,
+ LastUpdated = DateTime.UtcNow,
+ MachineGuid = _machineProvider.Machine.Guid,
+ StartDate = DateTime.UtcNow,
+ Status = (int)TangoUpdateStatuses.OfflineUpdateCompleted,
+ ApplicationVersion = backupFile.ApplicationVersion,
+ FirmwareVersion = backupFile.FirmwareVersion,
+ });
+
+ db.SaveChanges();
+ }
+ }
+ catch (Exception ex)
+ {
+ LogManager.Log(ex, "Error creating TangoUpdate entry...");
+ }
+ }
+
private void OnRestoreException(Exception ex, TaskCompletionSource<RestoreResult> completionSource, bool shouldRollback, String dbRollbackFile, TemporaryFolder tempFolder)
{
if (shouldRollback)