/* * 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:09:33 using System; using System.Collections.Generic; namespace com.itac.oib.monitoring.contracts.data { // source: assembly 3.2.0.152 // source: assembly ASM.AS.OIB.Monitoring.Proxy public class LineMapper:LineBaseMapper { // used for itac->asm: True // used for asm->itac: True // maps iTAC namespace conform type to ASM namespace type public static Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line get(Line itacLine) { if (itacLine == null) { return null; } Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line asmLine = new Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line(); mapItac2Asm(asmLine, itacLine); return asmLine; } public static void mapItac2Asm(Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line asmLine, Line itacLine) { asmLine.Name = itacLine.Name; // skip readonly property Stations asmLine.FullPath = itacLine.FullPath; } // maps iTAC namespace conform array to ASM namespace array public static Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line[] get(Line[] itacLine) { if (itacLine == null) { return null; } Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line[] asmLine = new Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line[itacLine.Length]; for (int i = 0; i < itacLine.Length; i++) { // to itac array asmLine[i] = LineMapper.get(itacLine[i]); } return asmLine; } // maps iTAC namespace conform array to ASM namespace list public static List getList(Line[] asmLine) { if (asmLine == null) { return null; } List itacLine = new List(); for (int i = 0; i < asmLine.Length; i++) { itacLine.Add(LineMapper.get(asmLine[i])); } return itacLine; } // map type from ASM namespace to iTAC namespace public static Line get(Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line asmLine) { if (asmLine == null) { return null; } Line itacLine = new Line(); mapAsm2Itac(asmLine, itacLine); return itacLine; } public static void mapAsm2Itac(Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line asmLine, Line itacLine) { LineBaseMapper.mapAsm2Itac(asmLine, itacLine); itacLine.Name = asmLine.Name; // maps ASM list 2 iTAC array itacLine.Stations = StationMapper.getArray(asmLine.Stations); itacLine.FullPath = asmLine.FullPath; } // maps ASM namespace conform list to iTAC namespace array public static Line[] getArray(IList asmLine) { if (asmLine == null) { return null; } Line[] itacLine = new Line[asmLine.Count]; for (int i = 0; i < asmLine.Count; i++) { itacLine[i] = LineMapper.get(asmLine[i]); } return itacLine; } // maps ASM namespace conform array to iTAC namespace array public static Line[] getArray(Asm.As.Oib.Monitoring.Proxy.Business.Objects.Line[] asmLine) { if (asmLine == null) { return null; } Line[] itacLine = new Line[asmLine.Length]; for (int i = 0; i < asmLine.Length; i++) { itacLine[i] = LineMapper.get(asmLine[i]); } return itacLine; } } }