aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Web/Tango.MachineService/Controllers/SynchronizationController.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Web/Tango.MachineService/Controllers/SynchronizationController.cs')
-rw-r--r--Software/Visual_Studio/Web/Tango.MachineService/Controllers/SynchronizationController.cs89
1 files changed, 35 insertions, 54 deletions
diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/SynchronizationController.cs b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/SynchronizationController.cs
index 51cf6f96b..5c5a13c4e 100644
--- a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/SynchronizationController.cs
+++ b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/SynchronizationController.cs
@@ -1,4 +1,7 @@
using Google.Protobuf;
+using Microsoft.Azure;
+using Microsoft.Azure.Management.Sql;
+using Microsoft.SqlServer.Management.Smo;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
@@ -17,7 +20,9 @@ using Tango.Core.DB;
using Tango.Core.Helpers;
using Tango.Core.IO;
using Tango.Logging;
+using Tango.MachineService.Helpers;
using Tango.MachineService.Models;
+using Tango.MachineService.SMO;
using Tango.PMR.Stubs;
using Tango.PMR.Synchronization;
using Tango.Synchronization.Local;
@@ -84,7 +89,7 @@ namespace Tango.MachineService.Controllers
try
{
- using (ObservablesContext db = ObservablesContext.CreateDefault(GetLocalServerAddress()))
+ using (ObservablesContext db = ObservablesContextHelper.CreateContext())
{
db.Configuration.LazyLoadingEnabled = false;
String serial_number = request.SerialNumber;
@@ -102,27 +107,28 @@ namespace Tango.MachineService.Controllers
response.Version = latest_machine_version.Version;
- response.FtpAddress = GetFtpAddress();
- response.FtpFilePath = latest_machine_version.FtpFilePath;
- response.FtpUserName = GetFtpUserName();
- response.FtpPassword = GetFtpPassword();
+ var client = StorageHelper.GetStorageBlobClient();
+ var container = StorageHelper.GetTangoVersionsContainer(client);
+ var blob = container.GetBlockBlobReference(latest_machine_version.BlobName);
+
+ response.BlobAddress = StorageHelper.GenerateBlobReadSignature(blob, TimeSpan.FromMinutes(60));
DbCredentials credentials = new DbCredentials();
- using (DbManager manager = DbManager.FromAddressAndName(GetDbAddress(), "Tango"))
+ using (SmoManager manager = new SmoManager())
{
- credentials = manager.CreateRandomLoginAndUser("Tango");
+ credentials = manager.CreateRandomLoginAndUser();
Task.Delay(TimeSpan.FromMinutes(10)).ContinueWith((x) =>
{
- using (DbManager m = DbManager.FromAddressAndName(GetDbAddress(), "Tango"))
+ using (SmoManager m = new SmoManager())
{
- m.DeleteLoginAndUser(credentials.UserName, "Tango");
+ m.DeleteLoginAndUser(credentials.UserName);
}
});
}
- response.DbAddress = GetDbAddress();
+ response.DbAddress = Config.DB_ADDRESS;
response.DbUserName = credentials.UserName;
response.DbPassword = credentials.Password;
}
@@ -143,7 +149,7 @@ namespace Tango.MachineService.Controllers
try
{
- using (ObservablesContext db = ObservablesContext.CreateDefault(GetLocalServerAddress()))
+ using (ObservablesContext db = ObservablesContextHelper.CreateContext())
{
db.Configuration.LazyLoadingEnabled = false;
String serial_number = request.SerialNumber;
@@ -161,27 +167,28 @@ namespace Tango.MachineService.Controllers
response.Version = latest_machine_version.Version;
- response.FtpAddress = GetFtpAddress();
- response.FtpFilePath = latest_machine_version.FtpFilePath;
- response.FtpUserName = GetFtpUserName();
- response.FtpPassword = GetFtpPassword();
+ var client = StorageHelper.GetStorageBlobClient();
+ var container = StorageHelper.GetTangoVersionsContainer(client);
+ var blob = container.GetBlockBlobReference(latest_machine_version.BlobName);
+
+ response.BlobAddress = StorageHelper.GenerateBlobReadSignature(blob, TimeSpan.FromMinutes(60));
DbCredentials credentials = new DbCredentials();
- using (DbManager manager = DbManager.FromAddressAndName(GetDbAddress(), "Tango"))
+ using (SmoManager manager = new SmoManager())
{
- credentials = manager.CreateRandomLoginAndUser("Tango");
+ credentials = manager.CreateRandomLoginAndUser();
Task.Delay(TimeSpan.FromMinutes(10)).ContinueWith((x) =>
{
- using (DbManager m = DbManager.FromAddressAndName(GetDbAddress(), "Tango"))
+ using (SmoManager m = new SmoManager())
{
- m.DeleteLoginAndUser(credentials.UserName, "Tango");
+ m.DeleteLoginAndUser(credentials.UserName);
}
});
}
- response.DbAddress = GetDbAddress();
+ response.DbAddress = Config.DB_ADDRESS;
response.DbUserName = credentials.UserName;
response.DbPassword = credentials.Password;
}
@@ -201,7 +208,7 @@ namespace Tango.MachineService.Controllers
try
{
- using (ObservablesContext db = ObservablesContext.CreateDefault(GetLocalServerAddress()))
+ using (ObservablesContext db = ObservablesContextHelper.CreateContext())
{
db.Configuration.LazyLoadingEnabled = false;
@@ -239,7 +246,7 @@ namespace Tango.MachineService.Controllers
try
{
- using (ObservablesContext db = ObservablesContext.CreateDefault(GetLocalServerAddress()))
+ using (ObservablesContext db = ObservablesContextHelper.CreateContext())
{
db.Configuration.LazyLoadingEnabled = false;
String serial_number = request.SerialNumber;
@@ -253,20 +260,20 @@ namespace Tango.MachineService.Controllers
DbCredentials credentials = new DbCredentials();
- using (DbManager manager = DbManager.FromAddressAndName(GetDbAddress(), "Tango"))
+ using (SmoManager manager = new SmoManager())
{
- credentials = manager.CreateRandomLoginAndUser("Tango");
+ credentials = manager.CreateRandomLoginAndUser();
Task.Delay(TimeSpan.FromMinutes(10)).ContinueWith((x) =>
{
- using (DbManager m = DbManager.FromAddressAndName(GetDbAddress(), "Tango"))
+ using (SmoManager m = new SmoManager())
{
- m.DeleteLoginAndUser(credentials.UserName, "Tango");
+ m.DeleteLoginAndUser(credentials.UserName);
}
});
}
- response.DbAddress = GetDbAddress();
+ response.DbAddress = Config.DB_ADDRESS;
response.DbUserName = credentials.UserName;
response.DbPassword = credentials.Password;
}
@@ -282,7 +289,7 @@ namespace Tango.MachineService.Controllers
[HttpPost]
public Machine PersonTest(Person p)
{
- using (var db = ObservablesContext.CreateDefault(GetLocalServerAddress()))
+ using (var db = ObservablesContextHelper.CreateContext())
{
var machine = new MachineBuilder(db)
.Set(x => x.SerialNumber == "1111")
@@ -304,32 +311,6 @@ namespace Tango.MachineService.Controllers
{
throw new HttpResponseException(Request.CreateErrorResponse(code, message));
}
-
- private String GetLocalServerAddress()
- {
- return ConfigurationManager.AppSettings["LocalServerAddress"].ToString();
- }
-
- private String GetDbAddress()
- {
- return ConfigurationManager.AppSettings["DbAddress"].ToString();
- }
-
- private String GetFtpAddress()
- {
- return ConfigurationManager.AppSettings["FtpAddress"].ToString();
- }
-
- private String GetFtpUserName()
- {
- return ConfigurationManager.AppSettings["FtpUserName"].ToString();
- }
-
- private String GetFtpPassword()
- {
- return ConfigurationManager.AppSettings["FtpPassword"].ToString();
- }
-
#endregion
}
}