aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/AuthenticationLoginResult.cs1
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Tango.MachineStudio.Common.csproj31
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs29
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/CheckForUpdatesRequest.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesRequest.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/CheckForUpdatesResponse.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesResponse.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/DownloadLatestVersionRequest.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/DownloadLatestVersionRequest.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/DownloadLatestVersionResponse.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/DownloadLatestVersionResponse.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/IMachineStudioService.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/IMachineStudioUpdateService.cs)7
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LatestVersionRequest.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/LatestVersionRequest.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LatestVersionResponse.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/LatestVersionResponse.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LoginRequest.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/LoginRequest.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LoginResponse.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/LoginResponse.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/MachineStudioService.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/MachineStudioUpdateService.cs)12
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadCompletedRequest.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadCompletedRequest.cs)4
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadCompletedResponse.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadCompletedResponse.cs)2
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadVersionRequest.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadVersionRequest.cs)8
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadVersionResponse.cs (renamed from Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadVersionResponse.cs)2
17 files changed, 43 insertions, 69 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/AuthenticationLoginResult.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/AuthenticationLoginResult.cs
index 78f5365a5..dd18d75b2 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/AuthenticationLoginResult.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/AuthenticationLoginResult.cs
@@ -4,6 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.BL.Entities;
+using Tango.MachineStudio.Common.Web;
namespace Tango.MachineStudio.Common.Authentication
{
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 87ccd8249..40d7da460 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
@@ -84,8 +84,8 @@
<Link>GlobalVersionInfo.cs</Link>
</Compile>
<Compile Include="Authentication\AuthenticationLoginResult.cs" />
- <Compile Include="Authentication\LoginRequest.cs" />
- <Compile Include="Authentication\LoginResponse.cs" />
+ <Compile Include="Web\LoginRequest.cs" />
+ <Compile Include="Web\LoginResponse.cs" />
<Compile Include="AutoComplete\MachinesProvider.cs" />
<Compile Include="Automation\Developer.cs" />
<Compile Include="Automation\UI.cs" />
@@ -130,19 +130,18 @@
<Compile Include="StudioModuleBase.cs" />
<Compile Include="StudioViewModel.cs" />
<Compile Include="Threading\IDispatcherProvider.cs" />
- <Compile Include="Update\DownloadLatestVersionResponse.cs" />
- <Compile Include="Update\DownloadLatestVersionRequest.cs" />
- <Compile Include="Update\CheckForUpdatesResponse.cs" />
- <Compile Include="Update\CheckForUpdatesRequest.cs" />
- <Compile Include="Update\IMachineStudioUpdateService.cs" />
- <Compile Include="Update\LatestVersionRequest.cs" />
- <Compile Include="Update\LatestVersionResponse.cs" />
- <Compile Include="Update\MachineStudioUpdateService.cs" />
- <None Include="Update\UpdateServiceHelper.cs" />
- <Compile Include="Update\UploadCompletedRequest.cs" />
- <Compile Include="Update\UploadCompletedResponse.cs" />
- <Compile Include="Update\UploadVersionRequest.cs" />
- <Compile Include="Update\UploadVersionResponse.cs" />
+ <Compile Include="Web\DownloadLatestVersionResponse.cs" />
+ <Compile Include="Web\DownloadLatestVersionRequest.cs" />
+ <Compile Include="Web\CheckForUpdatesResponse.cs" />
+ <Compile Include="Web\CheckForUpdatesRequest.cs" />
+ <Compile Include="Web\IMachineStudioService.cs" />
+ <Compile Include="Web\LatestVersionRequest.cs" />
+ <Compile Include="Web\LatestVersionResponse.cs" />
+ <Compile Include="Web\MachineStudioService.cs" />
+ <Compile Include="Web\UploadCompletedRequest.cs" />
+ <Compile Include="Web\UploadCompletedResponse.cs" />
+ <Compile Include="Web\UploadVersionRequest.cs" />
+ <Compile Include="Web\UploadVersionResponse.cs" />
<Compile Include="ValidationRules\Required.cs" />
<Compile Include="Video\DefaultVideoCaptureProvider.cs" />
<Compile Include="Video\IVideoCaptureProvider.cs" />
@@ -327,7 +326,7 @@
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<ProjectExtensions>
<VisualStudio>
- <UserProperties BuildVersion_StartDate="2000/1/1" BuildVersion_UseGlobalSettings="False" BuildVersion_BuildVersioningStyle="None.None.Increment.TimeStamp" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_AssemblyInfoFilename="Properties\AssemblyInfo.cs" />
+ <UserProperties BuildVersion_AssemblyInfoFilename="Properties\AssemblyInfo.cs" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_BuildVersioningStyle="None.None.Increment.TimeStamp" BuildVersion_UseGlobalSettings="False" BuildVersion_StartDate="2000/1/1" />
</VisualStudio>
</ProjectExtensions>
</Project> \ No newline at end of file
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs
deleted file mode 100644
index 067e4470d..000000000
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-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(60);
- binding.SendTimeout = TimeSpan.FromSeconds(60);
- 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.GetOrCreate<MachineStudioSettings>().UpdateServiceAddress);
- }
- }
-}
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesRequest.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/CheckForUpdatesRequest.cs
index e31a7f59e..4f9576f50 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesRequest.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/CheckForUpdatesRequest.cs
@@ -6,7 +6,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class CheckForUpdatesRequest : WebRequestSecureMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesResponse.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/CheckForUpdatesResponse.cs
index 450236f79..51608e6c4 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesResponse.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/CheckForUpdatesResponse.cs
@@ -6,7 +6,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class CheckForUpdatesResponse : WebResponseMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/DownloadLatestVersionRequest.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/DownloadLatestVersionRequest.cs
index 98aa9f1a4..d63654726 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/DownloadLatestVersionRequest.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/DownloadLatestVersionRequest.cs
@@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class DownloadLatestVersionRequest : WebRequestSecureMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/DownloadLatestVersionResponse.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/DownloadLatestVersionResponse.cs
index f85999f3d..3209b9a2f 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/DownloadLatestVersionResponse.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/DownloadLatestVersionResponse.cs
@@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class DownloadLatestVersionResponse : WebResponseMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/IMachineStudioUpdateService.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/IMachineStudioService.cs
index 375506b90..748df4644 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/IMachineStudioUpdateService.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/IMachineStudioService.cs
@@ -5,12 +5,11 @@ using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using System.Threading.Tasks;
-using Tango.MachineStudio.Common.Update;
using Tango.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
- public interface IMachineStudioUpdateService
+ public interface IMachineStudioService
{
DeploymentSlot Environment { get; set; }
@@ -23,5 +22,7 @@ namespace Tango.MachineStudio.Common.Update
Task<UploadCompletedResponse> NotifyUploadCompleted(UploadCompletedRequest request);
Task<LatestVersionResponse> GetLatestVersion(LatestVersionRequest request);
+
+ Task<LoginResponse> Login(LoginRequest request);
}
}
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/LatestVersionRequest.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LatestVersionRequest.cs
index b4e7bd975..59bb71db4 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/LatestVersionRequest.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LatestVersionRequest.cs
@@ -6,7 +6,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class LatestVersionRequest : WebRequestMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/LatestVersionResponse.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LatestVersionResponse.cs
index b90cbf370..7d43128f1 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/LatestVersionResponse.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LatestVersionResponse.cs
@@ -6,7 +6,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class LatestVersionResponse : WebResponseMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/LoginRequest.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LoginRequest.cs
index 94fe7f5e2..577f5e208 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/LoginRequest.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LoginRequest.cs
@@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Authentication
+namespace Tango.MachineStudio.Common.Web
{
public class LoginRequest : WebRequestMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/LoginResponse.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LoginResponse.cs
index e1d9c615a..0379c458b 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Authentication/LoginResponse.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/LoginResponse.cs
@@ -6,7 +6,7 @@ using System.Threading.Tasks;
using Tango.Core;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Authentication
+namespace Tango.MachineStudio.Common.Web
{
public class LoginResponse : WebResponseMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/MachineStudioUpdateService.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/MachineStudioService.cs
index 8fdd18abe..8b43146e1 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/MachineStudioUpdateService.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/MachineStudioService.cs
@@ -3,19 +3,20 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using Tango.MachineStudio.Common.Authentication;
using Tango.Settings;
using Tango.Transport.Web;
using Tango.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
- public class MachineStudioUpdateService : IMachineStudioUpdateService
+ public class MachineStudioService : IMachineStudioService
{
private WebTransportClient _client;
public DeploymentSlot Environment { get; set; }
- public MachineStudioUpdateService()
+ public MachineStudioService()
{
Environment = SettingsManager.Default.GetOrCreate<MachineStudioSettings>().DeploymentSlot;
_client = new WebTransportClient();
@@ -46,6 +47,11 @@ namespace Tango.MachineStudio.Common.Update
return _client.PostJson<DownloadLatestVersionRequest, DownloadLatestVersionResponse>(GetAddress() + "DownloadLatestVersion", request);
}
+ public Task<LoginResponse> Login(LoginRequest request)
+ {
+ return _client.PostJson<LoginRequest, LoginResponse>(GetAddress() + "Login", request);
+ }
+
private String GetAddress()
{
return Environment.ToAddress() + "/api/MachineStudio/";
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadCompletedRequest.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadCompletedRequest.cs
index d23d57351..48f5b2a6e 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadCompletedRequest.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadCompletedRequest.cs
@@ -6,10 +6,10 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class UploadCompletedRequest : WebRequestSecureMessage
{
-
+ public String Token { get; set; }
}
}
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadCompletedResponse.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadCompletedResponse.cs
index 89850e3e5..a290cf642 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadCompletedResponse.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadCompletedResponse.cs
@@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class UploadCompletedResponse : WebResponseMessage
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadVersionRequest.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadVersionRequest.cs
index fedb586ba..33577deb2 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadVersionRequest.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadVersionRequest.cs
@@ -6,14 +6,10 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
- public class UploadVersionRequest : WebRequestMessage
+ public class UploadVersionRequest : WebRequestSecureMessage
{
- public String Email { get; set; }
-
- public String Password { get; set; }
-
public String Version { get; set; }
public String Comments { get; set; }
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadVersionResponse.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadVersionResponse.cs
index 4d13fc6ad..9fb3ab94d 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UploadVersionResponse.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Web/UploadVersionResponse.cs
@@ -6,7 +6,7 @@ using System.Text;
using System.Threading.Tasks;
using Tango.Transport.Web;
-namespace Tango.MachineStudio.Common.Update
+namespace Tango.MachineStudio.Common.Web
{
public class UploadVersionResponse : WebResponseMessage
{