aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2018-02-21 20:21:57 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2018-02-21 20:21:57 +0200
commit956f9ea033553136ebf199fff30f288dc26fbeb0 (patch)
tree3780e906d8d4f12c5be3836e1704d93d8d4966bd /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common
parent808ce20dbd74862a75499ee0d4e87247ee4479b4 (diff)
downloadTango-956f9ea033553136ebf199fff30f288dc26fbeb0.tar.gz
Tango-956f9ea033553136ebf199fff30f288dc26fbeb0.zip
Working on machine studio update center..
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Navigation/NavigationView.cs1
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/StudioApplication/IStudioApplicationManager.cs5
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj7
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesRequest.cs22
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesResponse.cs31
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/IMachineStudioUpdateService.cs17
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs29
7 files changed, 112 insertions, 0 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Navigation/NavigationView.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Navigation/NavigationView.cs
index db0f0471f..7e324c996 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Navigation/NavigationView.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Navigation/NavigationView.cs
@@ -15,5 +15,6 @@ namespace Tango.MachineStudio.Common.Navigation
MainView,
LoginView,
ShutdownView,
+ UpdateView,
}
}
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/StudioApplication/IStudioApplicationManager.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/StudioApplication/IStudioApplicationManager.cs
index c67c34044..9a5f39a96 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/StudioApplication/IStudioApplicationManager.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/StudioApplication/IStudioApplicationManager.cs
@@ -48,5 +48,10 @@ namespace Tango.MachineStudio.Common.StudioApplication
/// <param name="moduleName">Name of the module.</param>
/// <param name="args">The arguments.</param>
void RequestModule(String moduleName, Object args);
+
+ /// <summary>
+ /// Gets the machine studio application version.
+ /// </summary>
+ String Version { get; }
}
}
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj
index cd4fc1aeb..a363ffc44 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj
@@ -54,6 +54,8 @@
</Reference>
<Reference Include="System" />
<Reference Include="System.Data" />
+ <Reference Include="System.Runtime.Serialization" />
+ <Reference Include="System.ServiceModel" />
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\..\packages\MahApps.Metro.1.5.0\lib\net45\System.Windows.Interactivity.dll</HintPath>
</Reference>
@@ -96,6 +98,10 @@
<Compile Include="Messages\IStudioMessage.cs" />
<Compile Include="Notifications\TaskItem.cs" />
<Compile Include="StudioModuleBase.cs" />
+ <Compile Include="Update\CheckForUpdatesResponse.cs" />
+ <Compile Include="Update\CheckForUpdatesRequest.cs" />
+ <Compile Include="Update\IMachineStudioUpdateService.cs" />
+ <Compile Include="Update\UpdateServiceHelper.cs" />
<Compile Include="ValidationRules\Required.cs" />
<Compile Include="Video\DefaultVideoCaptureProvider.cs" />
<Compile Include="Video\IVideoCaptureProvider.cs" />
@@ -218,5 +224,6 @@
<Name>Tango.Video</Name>
</ProjectReference>
</ItemGroup>
+ <ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project> \ No newline at end of file
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesRequest.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesRequest.cs
new file mode 100644
index 000000000..f76e714a2
--- /dev/null
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesRequest.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Tango.MachineStudio.Common.Update
+{
+ [DataContract]
+ public class CheckForUpdatesRequest
+ {
+ [DataMember]
+ public String Email { get; set; }
+
+ [DataMember]
+ public String Password { get; set; }
+
+ [DataMember]
+ public String Version { get; set; }
+ }
+}
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesResponse.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesResponse.cs
new file mode 100644
index 000000000..440e162a3
--- /dev/null
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesResponse.cs
@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Tango.MachineStudio.Common.Update
+{
+ [DataContract]
+ public class CheckForUpdatesResponse
+ {
+ [DataMember]
+ public bool IsUpdateAvailable { get; set; }
+
+ [DataMember]
+ public String Version { get; set; }
+
+ [DataMember]
+ public String FtpHost { get; set; }
+
+ [DataMember]
+ public String FilePath { get; set; }
+
+ [DataMember]
+ public String UserName { get; set; }
+
+ [DataMember]
+ public String Password { get; set; }
+ }
+}
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/IMachineStudioUpdateService.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/IMachineStudioUpdateService.cs
new file mode 100644
index 000000000..7b7269d23
--- /dev/null
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/IMachineStudioUpdateService.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Runtime.Serialization;
+using System.ServiceModel;
+using System.Text;
+using Tango.MachineStudio.Common.Update;
+
+namespace Tango.MachineStudio.Common.Update
+{
+ [ServiceContract]
+ public interface IMachineStudioUpdateService
+ {
+ [OperationContract]
+ CheckForUpdatesResponse CheckForUpdates(CheckForUpdatesRequest request);
+ }
+}
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs
new file mode 100644
index 000000000..87b974b99
--- /dev/null
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs
@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.ServiceModel;
+using System.Text;
+using System.Threading.Tasks;
+using Tango.Settings;
+
+namespace Tango.MachineStudio.Common.Update
+{
+ public static class UpdateServiceHelper
+ {
+ public static ChannelFactory<IMachineStudioUpdateService> GetUpdateServiceChannel()
+ {
+ BasicHttpBinding binding = new BasicHttpBinding(BasicHttpSecurityMode.None);
+ binding.ReceiveTimeout = TimeSpan.FromSeconds(20);
+ binding.SendTimeout = TimeSpan.FromSeconds(20);
+ binding.MaxBufferPoolSize = 6553600;
+ binding.MaxBufferSize = 6553600;
+ binding.MaxReceivedMessageSize = 6553600;
+ binding.ReaderQuotas.MaxDepth = 6553600;
+ binding.ReaderQuotas.MaxStringContentLength = 6553600;
+ binding.ReaderQuotas.MaxArrayLength = 6553600;
+ binding.ReaderQuotas.MaxBytesPerRead = 6553600;
+
+ return new ChannelFactory<IMachineStudioUpdateService>(binding, SettingsManager.Default.MachineStudio.UpdateServiceAddress);
+ }
+ }
+}