110 lines
5.5 KiB
C#
110 lines
5.5 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 11:13:37
|
|
// skip property IList, declared in DownloadMessage
|
|
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 DownloadMessageMapper
|
|
{
|
|
// 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.DownloadMessage get(DownloadMessage asmDownloadMessage) {
|
|
|
|
Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage result = new Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage(MessageLevelMapper.get(asmDownloadMessage.Level), new Asm.As.Oib.SiplacePro.LineControl.Contracts.Subsystem(), 0, null, null, new DateTime());
|
|
return result;
|
|
}
|
|
|
|
|
|
|
|
// maps iTAC namespace conform array to ASM namespace array
|
|
public static Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage[] get(DownloadMessage[] asmDownloadMessage)
|
|
{
|
|
if (asmDownloadMessage == null) { return null; }
|
|
Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage[] itacDownloadMessage = new Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage[asmDownloadMessage.Length];
|
|
for (int i = 0; i < asmDownloadMessage.Length; i++)
|
|
{
|
|
// to itac array
|
|
itacDownloadMessage[i] = DownloadMessageMapper.get(asmDownloadMessage[i]);
|
|
}
|
|
return itacDownloadMessage;
|
|
}
|
|
|
|
// maps iTAC namespace conform array to ASM namespace list
|
|
public static List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage> getList(DownloadMessage[] asmDownloadMessage)
|
|
{
|
|
if (asmDownloadMessage == null) { return null; }
|
|
List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage> itacDownloadMessage = new List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage>();
|
|
for (int i = 0; i < asmDownloadMessage.Length; i++)
|
|
{
|
|
itacDownloadMessage.Add(DownloadMessageMapper.get(asmDownloadMessage[i]));
|
|
}
|
|
return itacDownloadMessage;
|
|
}
|
|
|
|
// map type from ASM namespace to iTAC namespace
|
|
public static DownloadMessage get(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage asmDownloadMessage)
|
|
{
|
|
if (asmDownloadMessage == null) { return null; }
|
|
DownloadMessage itacDownloadMessage = new DownloadMessage();
|
|
mapAsm2Itac(asmDownloadMessage, itacDownloadMessage);
|
|
return itacDownloadMessage;
|
|
}
|
|
|
|
public static void mapAsm2Itac(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage asmDownloadMessage, DownloadMessage itacDownloadMessage)
|
|
{
|
|
itacDownloadMessage.Level = com.itac.oib.linecontrol.contracts.data.MessageLevelMapper.get(asmDownloadMessage.Level);
|
|
// complex asm property Level
|
|
itacDownloadMessage.Subsystem = com.itac.oib.linecontrol.contracts.data.SubsystemMapper.get(asmDownloadMessage.Subsystem);
|
|
// complex asm property Subsystem
|
|
itacDownloadMessage.Id = asmDownloadMessage.Id;
|
|
itacDownloadMessage.Text = asmDownloadMessage.Text;
|
|
// maps ASM list 2 iTAC array
|
|
itacDownloadMessage.SubMessages = DownloadMessageMapper.getArray(asmDownloadMessage.SubMessages);
|
|
itacDownloadMessage.DateTime = asmDownloadMessage.DateTime;
|
|
// skip property IList, declared in DownloadMessage
|
|
// array mapping
|
|
itacDownloadMessage.SubMessagesArray = DownloadMessageMapper.getArray(asmDownloadMessage.SubMessagesArray);
|
|
// complex asm property SubMessagesArray
|
|
}
|
|
|
|
// maps ASM namespace conform list to iTAC namespace array
|
|
public static DownloadMessage[] getArray(IList<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage> asmDownloadMessage)
|
|
{
|
|
if (asmDownloadMessage == null) { return null; }
|
|
DownloadMessage[] itacDownloadMessage = new DownloadMessage[asmDownloadMessage.Count];
|
|
for (int i = 0; i < asmDownloadMessage.Count; i++)
|
|
{
|
|
itacDownloadMessage[i] = DownloadMessageMapper.get(asmDownloadMessage[i]);
|
|
}
|
|
return itacDownloadMessage;
|
|
}
|
|
|
|
// maps ASM namespace conform array to iTAC namespace array
|
|
public static DownloadMessage[] getArray(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadMessage[] asmDownloadMessage)
|
|
{
|
|
if (asmDownloadMessage == null) { return null; }
|
|
DownloadMessage[] itacDownloadMessage = new DownloadMessage[asmDownloadMessage.Length];
|
|
for (int i = 0; i < asmDownloadMessage.Length; i++)
|
|
{
|
|
itacDownloadMessage[i] = DownloadMessageMapper.get(asmDownloadMessage[i]);
|
|
}
|
|
return itacDownloadMessage;
|
|
}
|
|
}
|
|
}
|