128 lines
6.1 KiB
C#
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;
|
|
}
|
|
}
|
|
}
|