/* * 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 06.12.2018 09:56:43 // skip property ExtensionDataObject, declared in TraceabilityData // skip property String, property in exclude list using System; using System.Collections.Generic; namespace com.itac.oib.traceability.contracts.data { // source: assembly 3.0.0.10 // source: assembly ASM.AS.OIB.Client public class TraceabilityDataMapper { // 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._2012._03.Traceability.Contracts.Data.TraceabilityData get(TraceabilityData itacTraceabilityData) { if (itacTraceabilityData == null) { return null; } www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData asmTraceabilityData = new www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData(); mapItac2Asm(asmTraceabilityData, itacTraceabilityData); return asmTraceabilityData; } public static void mapItac2Asm(www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData asmTraceabilityData, TraceabilityData itacTraceabilityData) { // skip property ExtensionDataObject, declared in TraceabilityData asmTraceabilityData.Accuracy = itacTraceabilityData.Accuracy; asmTraceabilityData.BaseType = itacTraceabilityData.BaseType; asmTraceabilityData.BoardID = itacTraceabilityData.BoardID; // complex property ComponentTypes, isArray:True, isGeneric:False asmTraceabilityData.ComponentTypes = com.itac.oib.traceability.contracts.data.ComponentTypeMapper.get( itacTraceabilityData.ComponentTypes); // complex property Consumptions, isArray:True, isGeneric:False asmTraceabilityData.Consumptions = com.itac.oib.traceability.contracts.data.ConsumptionMapper.get( itacTraceabilityData.Consumptions); asmTraceabilityData.DateBegin = itacTraceabilityData.DateBegin; asmTraceabilityData.DateComplete = itacTraceabilityData.DateComplete; asmTraceabilityData.DateCorrelationBegin = itacTraceabilityData.DateCorrelationBegin; asmTraceabilityData.DateCorrelationEnd = itacTraceabilityData.DateCorrelationEnd; // complex property ErrorCodes, isArray:False, isGeneric:False asmTraceabilityData.ErrorCodes = com.itac.oib.traceability.contracts.data.ErrorCodesMapper.get( itacTraceabilityData.ErrorCodes); asmTraceabilityData.ErrorLabel = itacTraceabilityData.ErrorLabel; // complex property Jobs, isArray:True, isGeneric:False asmTraceabilityData.Jobs = com.itac.oib.traceability.contracts.data.JobMapper.get( itacTraceabilityData.Jobs); asmTraceabilityData.Lane = itacTraceabilityData.Lane; asmTraceabilityData.Line = itacTraceabilityData.Line; // complex property Locations, isArray:True, isGeneric:False asmTraceabilityData.Locations = com.itac.oib.traceability.contracts.data.LocationMapper.get( itacTraceabilityData.Locations); asmTraceabilityData.MachineID = itacTraceabilityData.MachineID; // complex property PackagingUnits, isArray:True, isGeneric:False asmTraceabilityData.PackagingUnits = com.itac.oib.traceability.contracts.data.PackagingUnitMapper.get( itacTraceabilityData.PackagingUnits); // complex property Panels, isArray:True, isGeneric:False asmTraceabilityData.Panels = com.itac.oib.traceability.contracts.data.PanelMapper.get( itacTraceabilityData.Panels); asmTraceabilityData.Station = itacTraceabilityData.Station; asmTraceabilityData.SubLane = itacTraceabilityData.SubLane; asmTraceabilityData.Version = itacTraceabilityData.Version; // complex property PrePlacement, isArray:False, isGeneric:False asmTraceabilityData.PrePlacement = com.itac.oib.traceability.contracts.data.PrePlacementMapper.get( itacTraceabilityData.PrePlacement); // skip property String, property in exclude list } // maps iTAC namespace conform array to ASM namespace array public static www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData[] get(TraceabilityData[] itacTraceabilityData) { if (itacTraceabilityData == null) { return null; } www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData[] asmTraceabilityData = new www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData[itacTraceabilityData.Length]; for (int i = 0; i < itacTraceabilityData.Length; i++) { // to itac array asmTraceabilityData[i] = TraceabilityDataMapper.get(itacTraceabilityData[i]); } return asmTraceabilityData; } // maps iTAC namespace conform array to ASM namespace list public static List getList(TraceabilityData[] asmTraceabilityData) { if (asmTraceabilityData == null) { return null; } List itacTraceabilityData = new List(); for (int i = 0; i < asmTraceabilityData.Length; i++) { itacTraceabilityData.Add(TraceabilityDataMapper.get(asmTraceabilityData[i])); } return itacTraceabilityData; } // map type from ASM namespace to iTAC namespace public static TraceabilityData get(www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData asmTraceabilityData) { if (asmTraceabilityData == null) { return null; } TraceabilityData itacTraceabilityData = new TraceabilityData(); mapAsm2Itac(asmTraceabilityData, itacTraceabilityData); return itacTraceabilityData; } public static void mapAsm2Itac(www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData asmTraceabilityData, TraceabilityData itacTraceabilityData) { // skip property ExtensionDataObject, declared in TraceabilityData itacTraceabilityData.Accuracy = asmTraceabilityData.Accuracy; itacTraceabilityData.BaseType = asmTraceabilityData.BaseType; itacTraceabilityData.BoardID = asmTraceabilityData.BoardID; // array mapping itacTraceabilityData.ComponentTypes = ComponentTypeMapper.getArray(asmTraceabilityData.ComponentTypes); // complex asm property ComponentTypes // array mapping itacTraceabilityData.Consumptions = ConsumptionMapper.getArray(asmTraceabilityData.Consumptions); // complex asm property Consumptions itacTraceabilityData.DateBegin = asmTraceabilityData.DateBegin; itacTraceabilityData.DateComplete = asmTraceabilityData.DateComplete; itacTraceabilityData.DateCorrelationBegin = asmTraceabilityData.DateCorrelationBegin; itacTraceabilityData.DateCorrelationEnd = asmTraceabilityData.DateCorrelationEnd; itacTraceabilityData.ErrorCodes = com.itac.oib.traceability.contracts.data.ErrorCodesMapper.get(asmTraceabilityData.ErrorCodes); // complex asm property ErrorCodes itacTraceabilityData.ErrorLabel = asmTraceabilityData.ErrorLabel; // array mapping itacTraceabilityData.Jobs = JobMapper.getArray(asmTraceabilityData.Jobs); // complex asm property Jobs itacTraceabilityData.Lane = asmTraceabilityData.Lane; itacTraceabilityData.Line = asmTraceabilityData.Line; // array mapping itacTraceabilityData.Locations = LocationMapper.getArray(asmTraceabilityData.Locations); // complex asm property Locations itacTraceabilityData.MachineID = asmTraceabilityData.MachineID; // array mapping itacTraceabilityData.PackagingUnits = PackagingUnitMapper.getArray(asmTraceabilityData.PackagingUnits); // complex asm property PackagingUnits // array mapping itacTraceabilityData.Panels = PanelMapper.getArray(asmTraceabilityData.Panels); // complex asm property Panels itacTraceabilityData.Station = asmTraceabilityData.Station; itacTraceabilityData.SubLane = asmTraceabilityData.SubLane; itacTraceabilityData.Version = asmTraceabilityData.Version; itacTraceabilityData.PrePlacement = com.itac.oib.traceability.contracts.data.PrePlacementMapper.get(asmTraceabilityData.PrePlacement); // complex asm property PrePlacement // skip property String, property in exclude list } // maps ASM namespace conform list to iTAC namespace array public static TraceabilityData[] getArray(IList asmTraceabilityData) { if (asmTraceabilityData == null) { return null; } TraceabilityData[] itacTraceabilityData = new TraceabilityData[asmTraceabilityData.Count]; for (int i = 0; i < asmTraceabilityData.Count; i++) { itacTraceabilityData[i] = TraceabilityDataMapper.get(asmTraceabilityData[i]); } return itacTraceabilityData; } // maps ASM namespace conform array to iTAC namespace array public static TraceabilityData[] getArray(www.siplace.com.OIB._2012._03.Traceability.Contracts.Data.TraceabilityData[] asmTraceabilityData) { if (asmTraceabilityData == null) { return null; } TraceabilityData[] itacTraceabilityData = new TraceabilityData[asmTraceabilityData.Length]; for (int i = 0; i < asmTraceabilityData.Length; i++) { itacTraceabilityData[i] = TraceabilityDataMapper.get(asmTraceabilityData[i]); } return itacTraceabilityData; } } }