107 lines
5.3 KiB
C#
107 lines
5.3 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:02:34
|
|
// skip property ExtensionDataObject, declared in PanelPackaging
|
|
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace com.itac.oib.traceability.contracts.data
|
|
{
|
|
// source: assembly 2.3.0.2
|
|
// source: assembly ASM.AS.OIB.Client
|
|
public class PanelPackagingMapper
|
|
{
|
|
// used for itac->asm: True
|
|
// used for asm->itac: True
|
|
|
|
// maps iTAC namespace conform type to ASM namespace type
|
|
public static www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging get(PanelPackaging itacPanelPackaging)
|
|
{
|
|
if (itacPanelPackaging == null) { return null; }
|
|
www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging asmPanelPackaging = new www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging();
|
|
mapItac2Asm(asmPanelPackaging, itacPanelPackaging);
|
|
return asmPanelPackaging;
|
|
}
|
|
|
|
public static void mapItac2Asm(www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging asmPanelPackaging, PanelPackaging itacPanelPackaging)
|
|
{
|
|
// skip property ExtensionDataObject, declared in PanelPackaging
|
|
asmPanelPackaging.PackagingRefID = itacPanelPackaging.PackagingRefID;
|
|
// complex property ReferenceDesignators, isArray:True, isGeneric:False
|
|
asmPanelPackaging.ReferenceDesignators = com.itac.oib.traceability.contracts.data.PanelRefDesMapper.get( itacPanelPackaging.ReferenceDesignators);
|
|
}
|
|
|
|
// maps iTAC namespace conform array to ASM namespace array
|
|
public static www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging[] get(PanelPackaging[] itacPanelPackaging)
|
|
{
|
|
if (itacPanelPackaging == null) { return null; }
|
|
www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging[] asmPanelPackaging = new www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging[itacPanelPackaging.Length];
|
|
for (int i = 0; i < itacPanelPackaging.Length; i++)
|
|
{
|
|
// to itac array
|
|
asmPanelPackaging[i] = PanelPackagingMapper.get(itacPanelPackaging[i]);
|
|
}
|
|
return asmPanelPackaging;
|
|
}
|
|
|
|
// maps iTAC namespace conform array to ASM namespace list
|
|
public static List<www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging> getList(PanelPackaging[] asmPanelPackaging)
|
|
{
|
|
if (asmPanelPackaging == null) { return null; }
|
|
List<www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging> itacPanelPackaging = new List<www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging>();
|
|
for (int i = 0; i < asmPanelPackaging.Length; i++)
|
|
{
|
|
itacPanelPackaging.Add(PanelPackagingMapper.get(asmPanelPackaging[i]));
|
|
}
|
|
return itacPanelPackaging;
|
|
}
|
|
|
|
// map type from ASM namespace to iTAC namespace
|
|
public static PanelPackaging get(www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging asmPanelPackaging)
|
|
{
|
|
if (asmPanelPackaging == null) { return null; }
|
|
PanelPackaging itacPanelPackaging = new PanelPackaging();
|
|
mapAsm2Itac(asmPanelPackaging, itacPanelPackaging);
|
|
return itacPanelPackaging;
|
|
}
|
|
|
|
public static void mapAsm2Itac(www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging asmPanelPackaging, PanelPackaging itacPanelPackaging)
|
|
{
|
|
// skip property ExtensionDataObject, declared in PanelPackaging
|
|
itacPanelPackaging.PackagingRefID = asmPanelPackaging.PackagingRefID;
|
|
// array mapping
|
|
itacPanelPackaging.ReferenceDesignators = PanelRefDesMapper.getArray(asmPanelPackaging.ReferenceDesignators);
|
|
// complex asm property ReferenceDesignators
|
|
}
|
|
|
|
// maps ASM namespace conform list to iTAC namespace array
|
|
public static PanelPackaging[] getArray(IList<www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging> asmPanelPackaging)
|
|
{
|
|
if (asmPanelPackaging == null) { return null; }
|
|
PanelPackaging[] itacPanelPackaging = new PanelPackaging[asmPanelPackaging.Count];
|
|
for (int i = 0; i < asmPanelPackaging.Count; i++)
|
|
{
|
|
itacPanelPackaging[i] = PanelPackagingMapper.get(asmPanelPackaging[i]);
|
|
}
|
|
return itacPanelPackaging;
|
|
}
|
|
|
|
// maps ASM namespace conform array to iTAC namespace array
|
|
public static PanelPackaging[] getArray(www.siplace.com.OIB._2009._03.Traceability.Contracts.Data.PanelPackaging[] asmPanelPackaging)
|
|
{
|
|
if (asmPanelPackaging == null) { return null; }
|
|
PanelPackaging[] itacPanelPackaging = new PanelPackaging[asmPanelPackaging.Length];
|
|
for (int i = 0; i < asmPanelPackaging.Length; i++)
|
|
{
|
|
itacPanelPackaging[i] = PanelPackagingMapper.get(asmPanelPackaging[i]);
|
|
}
|
|
return itacPanelPackaging;
|
|
}
|
|
}
|
|
}
|