118 lines
6.9 KiB
C#
118 lines
6.9 KiB
C#
/*
|
|
* Copyright (c) 2018 iTAC Software AG, Germany. All Rights Reserved.
|
|
*
|
|
* This software is protected by copyright. Under no circumstances may any part of this file in any form be copied,
|
|
* printed, edited or otherwise distributed, be stored in a retrieval system, or be translated into another language
|
|
* without the written permission of iTAC Software AG.
|
|
*/
|
|
// created 02.11.2018 09:19:35
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using com.itac.oib.linecontrol.contracts.data;
|
|
|
|
namespace com.itac.oib.linecontrol.contracts.data
|
|
{
|
|
// source: assembly 5.1.0.84
|
|
// source: assembly ASM.AS.OIB.SIPLACEPro.LineControl.Contracts
|
|
public class LineControlLineStatusMapper
|
|
{
|
|
// used for itac->asm: True
|
|
// used for asm->itac: True
|
|
|
|
// maps iTAC namespace conform type to ASM namespace type
|
|
public static Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus get(LineControlLineStatus asmLineControlLineStatus)
|
|
{
|
|
if (asmLineControlLineStatus == null) { return null; }
|
|
Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus itacLineControlLineStatus = new Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus();
|
|
mapItac2Asm(itacLineControlLineStatus, asmLineControlLineStatus);
|
|
return itacLineControlLineStatus;
|
|
}
|
|
|
|
public static void mapItac2Asm(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus itacLineControlLineStatus, LineControlLineStatus asmLineControlLineStatus)
|
|
{
|
|
itacLineControlLineStatus.Line = asmLineControlLineStatus.Line;
|
|
itacLineControlLineStatus.LineControlServerHostName = asmLineControlLineStatus.LineControlServerHostName;
|
|
// complex property LineControlStationStati, isArray:False, isGeneric:True
|
|
itacLineControlLineStatus.LineControlStationStati = LineControlStationStatusMapper.getList(asmLineControlLineStatus.LineControlStationStati);
|
|
itacLineControlLineStatus.ProductionSchedule = asmLineControlLineStatus.ProductionSchedule;
|
|
// complex property StationwiseDownloadStateRight, isArray:False, isGeneric:False
|
|
itacLineControlLineStatus.StationwiseDownloadStateRight = com.itac.oib.linecontrol.contracts.data.StationwiseDownloadStateMapper.get( asmLineControlLineStatus.StationwiseDownloadStateRight);
|
|
// complex property StationwiseDownloadStateLeft, isArray:False, isGeneric:False
|
|
itacLineControlLineStatus.StationwiseDownloadStateLeft = com.itac.oib.linecontrol.contracts.data.StationwiseDownloadStateMapper.get( asmLineControlLineStatus.StationwiseDownloadStateLeft);
|
|
itacLineControlLineStatus.Job = asmLineControlLineStatus.Job;
|
|
}
|
|
|
|
// maps iTAC namespace conform array to ASM namespace array
|
|
public static Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus[] get(LineControlLineStatus[] asmLineControlLineStatus)
|
|
{
|
|
if (asmLineControlLineStatus == null) { return null; }
|
|
Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus[] itacLineControlLineStatus = new Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus[asmLineControlLineStatus.Length];
|
|
for (int i = 0; i < asmLineControlLineStatus.Length; i++)
|
|
{
|
|
// to itac array
|
|
itacLineControlLineStatus[i] = LineControlLineStatusMapper.get(asmLineControlLineStatus[i]);
|
|
}
|
|
return itacLineControlLineStatus;
|
|
}
|
|
|
|
// maps iTAC namespace conform array to ASM namespace list
|
|
public static List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus> getList(LineControlLineStatus[] asmLineControlLineStatus)
|
|
{
|
|
if (asmLineControlLineStatus == null) { return null; }
|
|
List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus> itacLineControlLineStatus = new List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus>();
|
|
for (int i = 0; i < asmLineControlLineStatus.Length; i++)
|
|
{
|
|
itacLineControlLineStatus.Add(LineControlLineStatusMapper.get(asmLineControlLineStatus[i]));
|
|
}
|
|
return itacLineControlLineStatus;
|
|
}
|
|
|
|
// map type from ASM namespace to iTAC namespace
|
|
public static LineControlLineStatus get(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus asmLineControlLineStatus)
|
|
{
|
|
if (asmLineControlLineStatus == null) { return null; }
|
|
LineControlLineStatus itacLineControlLineStatus = new LineControlLineStatus();
|
|
mapAsm2Itac(asmLineControlLineStatus, itacLineControlLineStatus);
|
|
return itacLineControlLineStatus;
|
|
}
|
|
|
|
public static void mapAsm2Itac(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus asmLineControlLineStatus, LineControlLineStatus itacLineControlLineStatus)
|
|
{
|
|
itacLineControlLineStatus.Line = asmLineControlLineStatus.Line;
|
|
itacLineControlLineStatus.LineControlServerHostName = asmLineControlLineStatus.LineControlServerHostName;
|
|
// maps ASM list 2 iTAC array
|
|
itacLineControlLineStatus.LineControlStationStati = LineControlStationStatusMapper.getArray(asmLineControlLineStatus.LineControlStationStati);
|
|
itacLineControlLineStatus.ProductionSchedule = asmLineControlLineStatus.ProductionSchedule;
|
|
itacLineControlLineStatus.StationwiseDownloadStateRight = com.itac.oib.linecontrol.contracts.data.StationwiseDownloadStateMapper.get(asmLineControlLineStatus.StationwiseDownloadStateRight);
|
|
// complex asm property StationwiseDownloadStateRight
|
|
itacLineControlLineStatus.StationwiseDownloadStateLeft = com.itac.oib.linecontrol.contracts.data.StationwiseDownloadStateMapper.get(asmLineControlLineStatus.StationwiseDownloadStateLeft);
|
|
// complex asm property StationwiseDownloadStateLeft
|
|
itacLineControlLineStatus.Job = asmLineControlLineStatus.Job;
|
|
}
|
|
|
|
// maps ASM namespace conform list to iTAC namespace array
|
|
public static LineControlLineStatus[] getArray(IList<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus> asmLineControlLineStatus)
|
|
{
|
|
if (asmLineControlLineStatus == null) { return null; }
|
|
LineControlLineStatus[] itacLineControlLineStatus = new LineControlLineStatus[asmLineControlLineStatus.Count];
|
|
for (int i = 0; i < asmLineControlLineStatus.Count; i++)
|
|
{
|
|
itacLineControlLineStatus[i] = LineControlLineStatusMapper.get(asmLineControlLineStatus[i]);
|
|
}
|
|
return itacLineControlLineStatus;
|
|
}
|
|
|
|
// maps ASM namespace conform array to iTAC namespace array
|
|
public static LineControlLineStatus[] getArray(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.LineControlLineStatus[] asmLineControlLineStatus)
|
|
{
|
|
if (asmLineControlLineStatus == null) { return null; }
|
|
LineControlLineStatus[] itacLineControlLineStatus = new LineControlLineStatus[asmLineControlLineStatus.Length];
|
|
for (int i = 0; i < asmLineControlLineStatus.Length; i++)
|
|
{
|
|
itacLineControlLineStatus[i] = LineControlLineStatusMapper.get(asmLineControlLineStatus[i]);
|
|
}
|
|
return itacLineControlLineStatus;
|
|
}
|
|
}
|
|
}
|