LoadFileFieldMap
using Relativity.DataExchange.Service;
using System;
using System.Collections;
namespace kCura.WinEDDS
{
[Serializable]
public class LoadFileFieldMap : IEnumerable
{
[Serializable]
public class LoadFileFieldMapItem
{
private DocumentField _documentField;
private int _nativeFileColumnIndex;
public DocumentField DocumentField {
get {
return _documentField;
}
set {
_documentField = value;
}
}
public int NativeFileColumnIndex {
get {
return _nativeFileColumnIndex;
}
set {
_nativeFileColumnIndex = value;
}
}
public LoadFileFieldMapItem(DocumentField docField, int columnIndex)
{
DocumentField = docField;
NativeFileColumnIndex = columnIndex;
}
}
private ArrayList _al;
public LoadFileFieldMapItem this[int index] {
get {
return (LoadFileFieldMapItem)_al[index];
}
}
public DocumentField[] DocumentFields {
get {
ArrayList arrayList = new ArrayList();
IEnumerator enumerator = default(IEnumerator);
try {
enumerator = _al.GetEnumerator();
while (enumerator.MoveNext()) {
LoadFileFieldMapItem loadFileFieldMapItem = (LoadFileFieldMapItem)enumerator.Current;
if (loadFileFieldMapItem.DocumentField != null)
arrayList.Add(loadFileFieldMapItem.DocumentField);
}
} finally {
if (enumerator is IDisposable)
(enumerator as IDisposable).Dispose();
}
return (DocumentField[])arrayList.ToArray(typeof(DocumentField));
}
}
public int Count => _al.Count;
public LoadFileFieldMapItem Identifier {
get {
IEnumerator enumerator = default(IEnumerator);
try {
enumerator = _al.GetEnumerator();
while (enumerator.MoveNext()) {
LoadFileFieldMapItem loadFileFieldMapItem = (LoadFileFieldMapItem)enumerator.Current;
if (loadFileFieldMapItem.DocumentField != null && loadFileFieldMapItem.DocumentField.FieldCategory == FieldCategory.Identifier)
return loadFileFieldMapItem;
}
} finally {
if (enumerator is IDisposable)
(enumerator as IDisposable).Dispose();
}
return null;
}
}
public void Add(LoadFileFieldMapItem item)
{
_al.Add(item);
}
public void AddAt(LoadFileFieldMapItem item, int index)
{
_al.Insert(index, item);
}
public LoadFileFieldMapItem[] ToArray()
{
return (LoadFileFieldMapItem[])_al.ToArray(typeof(LoadFileFieldMapItem));
}
public IEnumerator GetEnumerator()
{
return _al.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return this.GetEnumerator();
}
public LoadFileFieldMap()
{
_al = new ArrayList();
}
public void Remove(LoadFileFieldMapItem item)
{
_al.Remove(item);
}
public void RemoveAt(int index)
{
_al.RemoveAt(index);
}
}
}