aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineSetup/MachineSetupManager.cs
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2018-12-12 18:47:31 +0200
committerShlomo Hecht <shlomo@twine-s.com>2018-12-12 18:47:31 +0200
commitf901d520c6a62797eae912144d6c33d5881cc272 (patch)
tree76ab476634f2b443a41e8b4f1180d2164f8aceed /Software/Visual_Studio/PPC/Tango.PPC.Common/MachineSetup/MachineSetupManager.cs
parent33de2cfe94b9fde80f987aab9ad5aa95be6d4371 (diff)
parentd9a89773f2f283fbf5596799dd4d50d231817203 (diff)
downloadTango-f901d520c6a62797eae912144d6c33d5881cc272.tar.gz
Tango-f901d520c6a62797eae912144d6c33d5881cc272.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Visual_Studio/PPC/Tango.PPC.Common/MachineSetup/MachineSetupManager.cs')
-rw-r--r--Software/Visual_Studio/PPC/Tango.PPC.Common/MachineSetup/MachineSetupManager.cs87
1 files changed, 59 insertions, 28 deletions
diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineSetup/MachineSetupManager.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineSetup/MachineSetupManager.cs
index 22da5c57e..3d816c89a 100644
--- a/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineSetup/MachineSetupManager.cs
+++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/MachineSetup/MachineSetupManager.cs
@@ -15,6 +15,7 @@ using Tango.Core;
using Tango.Core.DB;
using Tango.Core.Helpers;
using Tango.Core.IO;
+using Tango.Integration.Operation;
using Tango.PMR.Synchronization;
using Tango.PPC.Common.Application;
using Tango.PPC.Common.Connection;
@@ -73,6 +74,26 @@ namespace Tango.PPC.Common.MachineSetup
{
LogManager.Log($"Starting machine setup for serial number {serialNumber}...");
+ IMachineOperator op = null;
+
+ var demoMode = SettingsManager.Default.GetOrCreate<PPCSettings>().DemoMode;
+
+ if (!demoMode)
+ {
+ //Connecting to machine...
+ LogManager.Log("Initiating machine connection...");
+
+ UpdateProgress("Connecting to machine", "Connecting...");
+ op = await DefaultMachineProvider.CreateMinimalMachineOperator((msg) =>
+ {
+ UpdateProgress("Connecting to machine", msg);
+ });
+ }
+ else
+ {
+ LogManager.Log("Application in demo mode. Skipping machine connection...");
+ }
+
//Connect to machine service and get matching packages for this machine.
UpdateProgress("Downloading software package", "Connecting to machine service...");
@@ -228,40 +249,50 @@ namespace Tango.PPC.Common.MachineSetup
throw LogManager.Log(ex, "Setup manager error while trying to synchronize database.");
}
- //Updating firmware
- UpdateProgress("Updating Firmware", "Connecting to firmware device...");
- LogManager.Log("");
- LogManager.Log("-------------------------------------------------------------------------");
- LogManager.Log("Updating Firmware...");
- var op = await DefaultMachineProvider.CreateMinimalMachineOperator();
-
- UpdateProgress("Updating Firmware", "Loading firmware package...");
- var tfpPath = Path.Combine(_newPackageTempFolder, "firmware_package.tfp");
- var stream = new FileStream(tfpPath, FileMode.Open);
- var handler = await op.UpgradeFirmware(stream);
- handler.Failed += (_, ex) =>
+ if (!demoMode)
{
- stream.Dispose();
- result.SetException(ex);
- };
- handler.Completed += (_, __) =>
+ //Updating firmware
+ UpdateProgress("Updating Firmware", "Connecting to firmware device...");
+ LogManager.Log("");
+ LogManager.Log("-------------------------------------------------------------------------");
+ LogManager.Log("Updating Firmware...");
+
+ UpdateProgress("Updating Firmware", "Loading firmware package...");
+ var tfpPath = Path.Combine(_newPackageTempFolder, "firmware_package.tfp");
+ var stream = new FileStream(tfpPath, FileMode.Open);
+ var handler = await op.UpgradeFirmware(stream);
+ handler.Failed += (_, ex) =>
+ {
+ stream.Dispose();
+ result.SetException(ex);
+ };
+ handler.Completed += (_, __) =>
+ {
+ UpdateProgress("Updating Firmware", "Firmware update completed successfully.");
+ stream.Dispose();
+ result.SetResult(new MachineSetupResult()
+ {
+ UpdatePackagePath = _newPackageTempFolder,
+ });
+ };
+ handler.Canceled += (_, __) =>
+ {
+ stream.Dispose();
+ result.SetException(new Exception("The operation has been canceled."));
+ };
+ handler.Progress += (_, e) =>
+ {
+ UpdateProgress("Updating Firmware", e.Message, false, e.Current, e.Total);
+ };
+ }
+ else
{
- UpdateProgress("Updating Firmware", "Firmware update completed successfully.");
- stream.Dispose();
+ LogManager.Log("Application in demo mode. Skipping firmware upgrade...");
result.SetResult(new MachineSetupResult()
{
UpdatePackagePath = _newPackageTempFolder,
});
- };
- handler.Canceled += (_, __) =>
- {
- stream.Dispose();
- result.SetException(new Exception("The operation has been canceled."));
- };
- handler.Progress += (_, e) =>
- {
- UpdateProgress("Updating Firmware", e.Message, false, e.Current, e.Total);
- };
+ }
}
catch (Exception ex)
{