/* * 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:41 using System; using System.Collections.Generic; namespace com.itac.oib.linecontrol.contracts.data { // source: assembly 5.1.0.84 // source: assembly ASM.AS.OIB.SIPLACEPro.LineControl.Contracts public class DownloadRequestMapper { // 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.DownloadRequest get(DownloadRequest asmDownloadRequest) { if (asmDownloadRequest == null) { return null; } Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest itacDownloadRequest = new Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest(); mapItac2Asm(itacDownloadRequest, asmDownloadRequest); return itacDownloadRequest; } public static void mapItac2Asm(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest itacDownloadRequest, DownloadRequest asmDownloadRequest) { // skip readonly property UseProductionScheduleOID // skip readonly property UseProductionScheduleElementIdLeft // skip readonly property UseProductionScheduleElementIdRight } // maps iTAC namespace conform array to ASM namespace array public static Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest[] get(DownloadRequest[] asmDownloadRequest) { if (asmDownloadRequest == null) { return null; } Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest[] itacDownloadRequest = new Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest[asmDownloadRequest.Length]; for (int i = 0; i < asmDownloadRequest.Length; i++) { // to itac array itacDownloadRequest[i] = DownloadRequestMapper.get(asmDownloadRequest[i]); } return itacDownloadRequest; } // maps iTAC namespace conform array to ASM namespace list public static List getList(DownloadRequest[] asmDownloadRequest) { if (asmDownloadRequest == null) { return null; } List itacDownloadRequest = new List(); for (int i = 0; i < asmDownloadRequest.Length; i++) { itacDownloadRequest.Add(DownloadRequestMapper.get(asmDownloadRequest[i])); } return itacDownloadRequest; } // map type from ASM namespace to iTAC namespace public static DownloadRequest get(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest asmDownloadRequest) { if (asmDownloadRequest == null) { return null; } DownloadRequest itacDownloadRequest = new DownloadRequest(); mapAsm2Itac(asmDownloadRequest, itacDownloadRequest); return itacDownloadRequest; } public static void mapAsm2Itac(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest asmDownloadRequest, DownloadRequest itacDownloadRequest) { itacDownloadRequest.UseProductionScheduleOID = asmDownloadRequest.UseProductionScheduleOID; itacDownloadRequest.UseProductionScheduleElementIdLeft = asmDownloadRequest.UseProductionScheduleElementIdLeft; itacDownloadRequest.UseProductionScheduleElementIdRight = asmDownloadRequest.UseProductionScheduleElementIdRight; } // maps ASM namespace conform list to iTAC namespace array public static DownloadRequest[] getArray(IList asmDownloadRequest) { if (asmDownloadRequest == null) { return null; } DownloadRequest[] itacDownloadRequest = new DownloadRequest[asmDownloadRequest.Count]; for (int i = 0; i < asmDownloadRequest.Count; i++) { itacDownloadRequest[i] = DownloadRequestMapper.get(asmDownloadRequest[i]); } return itacDownloadRequest; } // maps ASM namespace conform array to iTAC namespace array public static DownloadRequest[] getArray(Asm.As.Oib.SiplacePro.LineControl.Contracts.Data.DownloadRequest[] asmDownloadRequest) { if (asmDownloadRequest == null) { return null; } DownloadRequest[] itacDownloadRequest = new DownloadRequest[asmDownloadRequest.Length]; for (int i = 0; i < asmDownloadRequest.Length; i++) { itacDownloadRequest[i] = DownloadRequestMapper.get(asmDownloadRequest[i]); } return itacDownloadRequest; } } }