Files
2025-06-06 09:15:13 +02:00

128 lines
6.1 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:09:33
using System;
using System.Collections.Generic;
using com.itac.oib.monitoring.contracts.data;
namespace com.itac.oib.monitoring.contracts.data
{
// source: assembly 3.2.0.152
// source: assembly ASM.AS.OIB.Monitoring.Proxy
public class TrackEntryMapper
{
// 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.TrackEntry get(TrackEntry itacTrackEntry)
{
if (itacTrackEntry == null) { return null; }
Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry asmTrackEntry = new Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry();
mapItac2Asm(asmTrackEntry, itacTrackEntry);
return asmTrackEntry;
}
public static void mapItac2Asm(Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry asmTrackEntry, TrackEntry itacTrackEntry)
{
asmTrackEntry.TableLocation = itacTrackEntry.TableLocation;
asmTrackEntry.Track = itacTrackEntry.Track;
asmTrackEntry.Tower = itacTrackEntry.Tower;
asmTrackEntry.Level = itacTrackEntry.Level;
asmTrackEntry.Division = itacTrackEntry.Division;
asmTrackEntry.FeederType = itacTrackEntry.FeederType;
asmTrackEntry.ComponentName = itacTrackEntry.ComponentName;
asmTrackEntry.ComponentFullPath = itacTrackEntry.ComponentFullPath;
asmTrackEntry.ComponentShapeName = itacTrackEntry.ComponentShapeName;
asmTrackEntry.ComponentShapeFullPath = itacTrackEntry.ComponentShapeFullPath;
asmTrackEntry.FeederLongType = itacTrackEntry.FeederLongType;
asmTrackEntry.FeederTypeName = itacTrackEntry.FeederTypeName;
asmTrackEntry.TableTypeName = itacTrackEntry.TableTypeName;
// complex property Used, isArray:False, isGeneric:False
asmTrackEntry.Used = com.itac.oib.monitoring.contracts.data.UsedTypeMapper.get( itacTrackEntry.Used);
}
// maps iTAC namespace conform array to ASM namespace array
public static Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry[] get(TrackEntry[] itacTrackEntry)
{
if (itacTrackEntry == null) { return null; }
Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry[] asmTrackEntry = new Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry[itacTrackEntry.Length];
for (int i = 0; i < itacTrackEntry.Length; i++)
{
// to itac array
asmTrackEntry[i] = TrackEntryMapper.get(itacTrackEntry[i]);
}
return asmTrackEntry;
}
// maps iTAC namespace conform array to ASM namespace list
public static List<Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry> getList(TrackEntry[] asmTrackEntry)
{
if (asmTrackEntry == null) { return null; }
List<Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry> itacTrackEntry = new List<Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry>();
for (int i = 0; i < asmTrackEntry.Length; i++)
{
itacTrackEntry.Add(TrackEntryMapper.get(asmTrackEntry[i]));
}
return itacTrackEntry;
}
// map type from ASM namespace to iTAC namespace
public static TrackEntry get(Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry asmTrackEntry)
{
if (asmTrackEntry == null) { return null; }
TrackEntry itacTrackEntry = new TrackEntry();
mapAsm2Itac(asmTrackEntry, itacTrackEntry);
return itacTrackEntry;
}
public static void mapAsm2Itac(Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry asmTrackEntry, TrackEntry itacTrackEntry)
{
itacTrackEntry.TableLocation = asmTrackEntry.TableLocation;
itacTrackEntry.Track = asmTrackEntry.Track;
itacTrackEntry.Tower = asmTrackEntry.Tower;
itacTrackEntry.Level = asmTrackEntry.Level;
itacTrackEntry.Division = asmTrackEntry.Division;
itacTrackEntry.FeederType = asmTrackEntry.FeederType;
itacTrackEntry.ComponentName = asmTrackEntry.ComponentName;
itacTrackEntry.ComponentFullPath = asmTrackEntry.ComponentFullPath;
itacTrackEntry.ComponentShapeName = asmTrackEntry.ComponentShapeName;
itacTrackEntry.ComponentShapeFullPath = asmTrackEntry.ComponentShapeFullPath;
itacTrackEntry.FeederLongType = asmTrackEntry.FeederLongType;
itacTrackEntry.FeederTypeName = asmTrackEntry.FeederTypeName;
itacTrackEntry.TableTypeName = asmTrackEntry.TableTypeName;
itacTrackEntry.Used = com.itac.oib.monitoring.contracts.data.UsedTypeMapper.get(asmTrackEntry.Used);
// complex asm property Used
}
// maps ASM namespace conform list to iTAC namespace array
public static TrackEntry[] getArray(IList<Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry> asmTrackEntry)
{
if (asmTrackEntry == null) { return null; }
TrackEntry[] itacTrackEntry = new TrackEntry[asmTrackEntry.Count];
for (int i = 0; i < asmTrackEntry.Count; i++)
{
itacTrackEntry[i] = TrackEntryMapper.get(asmTrackEntry[i]);
}
return itacTrackEntry;
}
// maps ASM namespace conform array to iTAC namespace array
public static TrackEntry[] getArray(Asm.As.Oib.Monitoring.Proxy.Business.Objects.TrackEntry[] asmTrackEntry)
{
if (asmTrackEntry == null) { return null; }
TrackEntry[] itacTrackEntry = new TrackEntry[asmTrackEntry.Length];
for (int i = 0; i < asmTrackEntry.Length; i++)
{
itacTrackEntry[i] = TrackEntryMapper.get(asmTrackEntry[i]);
}
return itacTrackEntry;
}
}
}