dep08siasm/Adaptation/FileHandlers/OpenInsight/CommonGatewayInterface.cs
Mike Phares 5cda494708 Infineon.EAF.Runtime v2.59.0
With .gitignore *.traineddata
2025-02-21 13:47:08 -07:00

38 lines
1.6 KiB
C#

using Adaptation.Shared;
using Adaptation.Shared.Methods;
using System;
using System.Collections.Generic;
using System.IO;
using System.Net.Http;
namespace Adaptation.FileHandlers.OpenInsight;
public class CommonGatewayInterface
{
internal static async void PutReactorStatesStatus(IFileRead fileRead, Logistics logistics, HttpClient httpClient, List<jpeg.Description> descriptions, string logisticsSequenceMemoryDirectory)
{
HttpContent httpContent = null;
string status = descriptions[0].MID;
string reactorNumber = logistics.MesEntity.Substring(1);
string statusDateTime = logistics.DateTimeFromSequence.ToString("MM-dd-yyyy HH:mm:ss");
string contentFile = Path.Combine(logisticsSequenceMemoryDirectory, $"{logistics.DateTimeFromSequence.Ticks}.txt");
Uri uri = new($"{httpClient.BaseAddress.OriginalString}reactno={reactorNumber}&status={status}&statusdtm={statusDateTime}");
try
{
HttpResponseMessage httpResponseMessage = await httpClient.PutAsync(uri, httpContent);
if (httpResponseMessage.StatusCode is not System.Net.HttpStatusCode.OK)
File.WriteAllText(contentFile, "Failed!");
else
{
string content = await httpResponseMessage.Content.ReadAsStringAsync();
File.WriteAllText(contentFile, content);
}
}
catch (Exception ex)
{
File.WriteAllText(contentFile, $"{ex.Message}{Environment.NewLine}{ex.StackTrace}{Environment.NewLine}{fileRead.CellInstanceConnectionName}");
}
}
}