131 lines
6.0 KiB
C#
131 lines
6.0 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 23.11.2018 08:10:38
|
|
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace com.itac.oib.linecontrol.contracts.data
|
|
{
|
|
// source: assembly 3.2.0.152
|
|
// source: assembly ASM.AS.OIB.SIPLACEPro.LineControl.Contracts
|
|
public class OptimizerMessageMapper
|
|
{
|
|
// 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.OptimizerMessage get(OptimizerMessage itacOptimizerMessage)
|
|
{
|
|
if (itacOptimizerMessage == null) { return null; }
|
|
Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage asmOptimizerMessage = new Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage();
|
|
mapItac2Asm(asmOptimizerMessage, itacOptimizerMessage);
|
|
return asmOptimizerMessage;
|
|
}
|
|
|
|
public static void mapItac2Asm(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage asmOptimizerMessage, OptimizerMessage itacOptimizerMessage)
|
|
{
|
|
asmOptimizerMessage.MessageType = itacOptimizerMessage.MessageType;
|
|
asmOptimizerMessage.MessageCode = itacOptimizerMessage.MessageCode;
|
|
asmOptimizerMessage.Message = itacOptimizerMessage.Message;
|
|
// complex property Parameters, isArray:False, isGeneric:True
|
|
// implicit mapping primitive type itac->ASM!!!
|
|
asmOptimizerMessage.Parameters = getList(itacOptimizerMessage.Parameters);
|
|
}
|
|
|
|
// maps iTAC namespace conform array to ASM namespace array
|
|
public static Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage[] get(OptimizerMessage[] itacOptimizerMessage)
|
|
{
|
|
if (itacOptimizerMessage == null) { return null; }
|
|
Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage[] asmOptimizerMessage = new Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage[itacOptimizerMessage.Length];
|
|
for (int i = 0; i < itacOptimizerMessage.Length; i++)
|
|
{
|
|
// to itac array
|
|
asmOptimizerMessage[i] = OptimizerMessageMapper.get(itacOptimizerMessage[i]);
|
|
}
|
|
return asmOptimizerMessage;
|
|
}
|
|
|
|
// maps iTAC namespace conform array to ASM namespace list
|
|
public static List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage> getList(OptimizerMessage[] asmOptimizerMessage)
|
|
{
|
|
if (asmOptimizerMessage == null) { return null; }
|
|
List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage> itacOptimizerMessage = new List<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage>();
|
|
for (int i = 0; i < asmOptimizerMessage.Length; i++)
|
|
{
|
|
itacOptimizerMessage.Add(OptimizerMessageMapper.get(asmOptimizerMessage[i]));
|
|
}
|
|
return itacOptimizerMessage;
|
|
}
|
|
|
|
// map type from ASM namespace to iTAC namespace
|
|
public static OptimizerMessage get(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage asmOptimizerMessage)
|
|
{
|
|
if (asmOptimizerMessage == null) { return null; }
|
|
OptimizerMessage itacOptimizerMessage = new OptimizerMessage();
|
|
mapAsm2Itac(asmOptimizerMessage, itacOptimizerMessage);
|
|
return itacOptimizerMessage;
|
|
}
|
|
|
|
public static void mapAsm2Itac(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage asmOptimizerMessage, OptimizerMessage itacOptimizerMessage)
|
|
{
|
|
itacOptimizerMessage.MessageType = asmOptimizerMessage.MessageType;
|
|
itacOptimizerMessage.MessageCode = asmOptimizerMessage.MessageCode;
|
|
itacOptimizerMessage.Message = asmOptimizerMessage.Message;
|
|
// maps ASM list 2 iTAC array
|
|
// implicit mapping primitive type !!!
|
|
itacOptimizerMessage.Parameters = getArray(asmOptimizerMessage.Parameters);
|
|
}
|
|
|
|
// maps ASM namespace conform list to iTAC namespace array
|
|
public static OptimizerMessage[] getArray(IList<Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage> asmOptimizerMessage)
|
|
{
|
|
if (asmOptimizerMessage == null) { return null; }
|
|
OptimizerMessage[] itacOptimizerMessage = new OptimizerMessage[asmOptimizerMessage.Count];
|
|
for (int i = 0; i < asmOptimizerMessage.Count; i++)
|
|
{
|
|
itacOptimizerMessage[i] = OptimizerMessageMapper.get(asmOptimizerMessage[i]);
|
|
}
|
|
return itacOptimizerMessage;
|
|
}
|
|
|
|
// maps ASM namespace conform array to iTAC namespace array
|
|
public static OptimizerMessage[] getArray(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.OptimizerMessage[] asmOptimizerMessage)
|
|
{
|
|
if (asmOptimizerMessage == null) { return null; }
|
|
OptimizerMessage[] itacOptimizerMessage = new OptimizerMessage[asmOptimizerMessage.Length];
|
|
for (int i = 0; i < asmOptimizerMessage.Length; i++)
|
|
{
|
|
itacOptimizerMessage[i] = OptimizerMessageMapper.get(asmOptimizerMessage[i]);
|
|
}
|
|
return itacOptimizerMessage;
|
|
}
|
|
// maps c# list to iTAC c# array
|
|
public static String[] getArray(List<System.String> value)
|
|
{
|
|
if (value == null) { return null; }
|
|
String[] result = new String[value.Count];
|
|
for (int i = 0; i < value.Count; i++)
|
|
{
|
|
result[i] = value[i];
|
|
}
|
|
return result;
|
|
}
|
|
// maps c# list to iTAC c# array
|
|
public static List<String> getList(System.String[] value)
|
|
{
|
|
if (value == null) { return null; }
|
|
List<System.String> result = new List<System.String>();
|
|
for (int i = 0; i < value.Length; i++)
|
|
{
|
|
result.Add( value[i]);
|
|
}
|
|
return result;
|
|
}
|
|
}
|
|
}
|