initialize

This commit is contained in:
Pruefer
2025-06-06 09:15:13 +02:00
commit fa7c2730f1
5817 changed files with 1339670 additions and 0 deletions

View File

@@ -0,0 +1,187 @@
#region Namespace
using System;
using System.Diagnostics;
using com.itac.mes.proxy.business;
using com.itac.mes.tools;
using www.siplace.com.OIB._2015._10.LineControlServer.Contracts.Data;
using AsmNamespace = www.siplace.com.OIB._2015._10.LineControlServer.Contracts.Data;
using Constants = com.itac.mes.tools.Constants;
using MesNamespace = com.itac.oib.linecontrol.contracts.data;
using OibClient = Asm.As.Oib.Client;
#endregion
namespace Itac.Oib
{
/// <summary>
/// Receiver class for the TraceService events
/// </summary>
public class LineControlMesInterceptorReceiver : IDisposable, IReceiver
{
#region Fields
OIBEventHandler _eventHandler;
readonly OibClient.OibLineControlMesInterceptorEvents _oibLineControlMesInterceptorEvents;
#endregion
#region construtor/destructor
public LineControlMesInterceptorReceiver(OibClient.OibLineControlMesInterceptorEvents oibLineControlMesInterceptorEvents,
OIBEventHandler eventHandler)
{
if (oibLineControlMesInterceptorEvents == null) throw new ArgumentNullException("oibLineControlMesInterceptorEvents");
if (eventHandler == null) throw new ArgumentNullException("eventHandler");
this._oibLineControlMesInterceptorEvents = oibLineControlMesInterceptorEvents;
this._eventHandler = eventHandler;
_oibLineControlMesInterceptorEvents.Ping = Ping;
_oibLineControlMesInterceptorEvents.VerifyPcbForAutoProgramDownload = VerifyPcbForAutoProgramDownload;
_oibLineControlMesInterceptorEvents.VerifyRecipeActivationOnDekPrinter = VerifyRecipeActivationOnDekPrinter;
_oibLineControlMesInterceptorEvents.VerifyRecipeDownload = VerifyRecipeDownload;
_oibLineControlMesInterceptorEvents.VerifyRecipeForAutoProgramDownload = VerifyRecipeForAutoProgramDownload;
_oibLineControlMesInterceptorEvents.VerifyStartAutoProgramDownload = VerifyStartAutoProgramDownload;
}
public void Dispose()
{
if (_oibLineControlMesInterceptorEvents != null) { _oibLineControlMesInterceptorEvents.Dispose(); }
}
#endregion
#region Start/Stop
public void Start()
{
if (!_oibLineControlMesInterceptorEvents.IsStarted)
{
_oibLineControlMesInterceptorEvents.Start();
}
}
public void Stop()
{
_oibLineControlMesInterceptorEvents.Stop();
}
#endregion
#region Handling of events
bool Ping()
{
LogHandler.log(Constants.LOGGER, TraceEventType.Verbose, "LineControlMesInterceptorReceiver.Ping");
return _eventHandler != null;
}
private MesVerificationResult VerifyRecipeForAutoProgramDownload(VerifyRecipeForAutoProgramDownloadRequest request)
{
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "LineControlMesInterceptorReceiver VerifyRecipeForAutoProgramDownload called");
// map value from asm namespace to mes namespace
MesNamespace.VerifyRecipeForAutoProgramDownloadRequest report = MesNamespace.VerifyRecipeForAutoProgramDownloadRequestMapper.get(request);
// create return value
AsmNamespace.MesVerificationResult asmResult = null;
try
{
MesNamespace.MesVerificationResult mesResult = _eventHandler.verifyRecipeForAutoProgramDownload(report);
asmResult = MesNamespace.MesVerificationResultMapper.get(mesResult);
}
catch (Exception e)
{
asmResult = getFailureResult(e);
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "failed to process LineControlMesInterceptorReceiver.VerifyRecipeForAutoProgramDownload", e);
}
return asmResult;
}
private MesVerificationResult VerifyStartAutoProgramDownload(VerifyRecipeForAutoProgramDownloadRequest request)
{
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "LineControlMesInterceptorReceiver VerifyStartAutoProgramDownload called");
// map value from asm namespace to mes namespace
MesNamespace.VerifyRecipeForAutoProgramDownloadRequest report = MesNamespace.VerifyRecipeForAutoProgramDownloadRequestMapper.get(request);
AsmNamespace.MesVerificationResult asmResult = null;
try
{
MesNamespace.MesVerificationResult mesResult = _eventHandler.verifyStartAutoProgramDownload(report);
asmResult = MesNamespace.MesVerificationResultMapper.get(mesResult);
}
catch (Exception e)
{
asmResult = getFailureResult(e);
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "failed to process LineControlMesInterceptorReceiver.VerifyStartAutoProgramDownload", e);
}
return asmResult;
}
private MesVerificationResult VerifyRecipeDownload(VerifyRecipeDownloadRequest request)
{
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "LineControlMesInterceptorReceiver VerifyRecipeDownload called");
// map value from asm namespace to mes namespace
MesNamespace.VerifyRecipeDownloadRequest report = MesNamespace.VerifyRecipeDownloadRequestMapper.get(request);
AsmNamespace.MesVerificationResult asmResult = null;
try
{
MesNamespace.MesVerificationResult mesResult = _eventHandler.verifyRecipeDownload(report);
asmResult = MesNamespace.MesVerificationResultMapper.get(mesResult);
}
catch (Exception e)
{
asmResult = getFailureResult(e);
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "failed to process LineControlMesInterceptorReceiver.VerifyRecipeDownload", e);
}
return asmResult;
}
private MesVerificationResult VerifyRecipeActivationOnDekPrinter(VerifyRecipeActivationOnDekPrinterRequest request)
{
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "LineControlMesInterceptorReceiver VerifyRecipeActivationOnDekPrinterRequest called");
// map value from asm namespace to mes namespace
MesNamespace.VerifyRecipeActivationOnDekPrinterRequest report = MesNamespace.VerifyRecipeActivationOnDekPrinterRequestMapper.get(request);
AsmNamespace.MesVerificationResult asmResult = null;
try
{
MesNamespace.MesVerificationResult mesResult = _eventHandler.verifyRecipeActivationOnDekPrinter(report);
asmResult = MesNamespace.MesVerificationResultMapper.get(mesResult);
}
catch (Exception e)
{
asmResult = getFailureResult(e);
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "failed to process LineControlMesInterceptorReceiver.VerifyRecipeActivationOnDekPrinterRequest", e);
}
return asmResult;
}
private MesVerificationResult VerifyPcbForAutoProgramDownload(VerifyPcbForAutoProgramDownloadRequest request)
{
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "LineControlMesInterceptorReceiver VerifyPcbForAutoProgramDownloadRequest called");
// map value from asm namespace to mes namespace
MesNamespace.VerifyPcbForAutoProgramDownloadRequest report = MesNamespace.VerifyPcbForAutoProgramDownloadRequestMapper.get(request);
AsmNamespace.MesVerificationResult asmResult = null;
try
{
MesNamespace.MesVerificationResult mesResult = _eventHandler.verifyPcbForAutoProgramDownload(report);
asmResult = MesNamespace.MesVerificationResultMapper.get(mesResult);
}
catch (Exception e)
{
asmResult = getFailureResult(e);
LogHandler.log(Constants.LOGGER, TraceEventType.Information, "failed to process LineControlMesInterceptorReceiver.VerifyPcbForAutoProgramDownloadRequest", e);
}
return asmResult;
}
private AsmNamespace.MesVerificationResult getFailureResult(Exception e)
{
MesVerificationResult result = new MesVerificationResult();
result.VerificationResult = 2; // 0=OK, 1=Rejected, 2=Error
result.Reason = e.Message;
return result;
}
#endregion
}
}