34 lines
1.6 KiB
C#
34 lines
1.6 KiB
C#
using System.Collections.ObjectModel;
|
|
using System.Linq;
|
|
|
|
namespace Adaptation.Shared;
|
|
|
|
public class ProcessDataStandardFormatMapping
|
|
{
|
|
|
|
public ReadOnlyCollection<int> ColumnIndices { get; private set; }
|
|
public ReadOnlyCollection<string> NewColumnNames { get; private set; }
|
|
public ReadOnlyCollection<string> OldColumnNames { get; private set; }
|
|
|
|
public ProcessDataStandardFormatMapping(ReadOnlyCollection<int> columnIndices,
|
|
ReadOnlyCollection<string> newColumnNames,
|
|
ReadOnlyCollection<string> oldColumnNames)
|
|
{
|
|
ColumnIndices = columnIndices;
|
|
NewColumnNames = newColumnNames;
|
|
OldColumnNames = oldColumnNames;
|
|
}
|
|
|
|
internal static ProcessDataStandardFormatMapping Get(string processDataStandardFormatMappingOldColumnNames, string processDataStandardFormatMappingNewColumnNames, string processDataStandardFormatMappingColumnIndices)
|
|
{
|
|
ProcessDataStandardFormatMapping result;
|
|
ReadOnlyCollection<string> newColumnNames = new(processDataStandardFormatMappingNewColumnNames.Split(','));
|
|
ReadOnlyCollection<string> oldColumnNames = new(processDataStandardFormatMappingOldColumnNames.Split(','));
|
|
ReadOnlyCollection<int> columnIndices = new(processDataStandardFormatMappingColumnIndices.Split(',').Select(int.Parse).ToArray());
|
|
result = new(columnIndices: columnIndices,
|
|
newColumnNames: newColumnNames,
|
|
oldColumnNames: oldColumnNames);
|
|
return result;
|
|
}
|
|
|
|
} |