using System;
using System.Collections;
namespace System.Security.Cryptography.X509Certificates
{
/// Represents a collection of objects. This class cannot be inherited.
// Token: 0x0200028F RID: 655
public sealed class X509ChainElementCollection : ICollection, IEnumerable
{
// Token: 0x06001831 RID: 6193 RVA: 0x00052644 File Offset: 0x00050844
internal X509ChainElementCollection()
{
this._list = new ArrayList();
}
/// Copies an object into an array, starting at the specified index.
/// An array to copy the object to.
/// The index of at which to start copying.
/// The specified is less than zero, or greater than or equal to the length of the array.
///
/// is null.
///
/// plus the current count is greater than the length of the array.
// Token: 0x06001832 RID: 6194 RVA: 0x00052658 File Offset: 0x00050858
void ICollection.CopyTo(Array array, int index)
{
this._list.CopyTo(array, index);
}
/// Gets an object that can be used to navigate a collection of chain elements.
/// An object.
// Token: 0x06001833 RID: 6195 RVA: 0x00052668 File Offset: 0x00050868
IEnumerator IEnumerable.GetEnumerator()
{
return new X509ChainElementEnumerator(this._list);
}
/// Gets the number of elements in the collection.
/// An integer representing the number of elements in the collection.
// Token: 0x17000798 RID: 1944
// (get) Token: 0x06001834 RID: 6196 RVA: 0x00052678 File Offset: 0x00050878
public int Count
{
get
{
return this._list.Count;
}
}
/// Gets a value indicating whether the collection of chain elements is synchronized.
/// Always returns false.
// Token: 0x17000799 RID: 1945
// (get) Token: 0x06001835 RID: 6197 RVA: 0x00052688 File Offset: 0x00050888
public bool IsSynchronized
{
get
{
return this._list.IsSynchronized;
}
}
/// Gets the object at the specified index.
/// An object.
/// An integer value.
///
/// is less than zero.
///
/// is greater than or equal to the length of the collection.
// Token: 0x1700079A RID: 1946
public X509ChainElement this[int index]
{
get
{
return (X509ChainElement)this._list[index];
}
}
/// Gets an object that can be used to synchronize access to an object.
/// A pointer reference to the current object.
// Token: 0x1700079B RID: 1947
// (get) Token: 0x06001837 RID: 6199 RVA: 0x000526AC File Offset: 0x000508AC
public object SyncRoot
{
get
{
return this._list.SyncRoot;
}
}
/// Copies an object into an array, starting at the specified index.
/// An array of objects.
/// An integer representing the index value.
/// The specified is less than zero, or greater than or equal to the length of the array.
///
/// is null.
///
/// plus the current count is greater than the length of the array.
// Token: 0x06001838 RID: 6200 RVA: 0x000526BC File Offset: 0x000508BC
public void CopyTo(X509ChainElement[] array, int index)
{
this._list.CopyTo(array, index);
}
/// Gets an object that can be used to navigate through a collection of chain elements.
/// An object.
// Token: 0x06001839 RID: 6201 RVA: 0x000526CC File Offset: 0x000508CC
public X509ChainElementEnumerator GetEnumerator()
{
return new X509ChainElementEnumerator(this._list);
}
// Token: 0x0600183A RID: 6202 RVA: 0x000526DC File Offset: 0x000508DC
internal void Add(X509Certificate2 certificate)
{
this._list.Add(new X509ChainElement(certificate));
}
// Token: 0x0600183B RID: 6203 RVA: 0x000526F0 File Offset: 0x000508F0
internal void Clear()
{
this._list.Clear();
}
// Token: 0x0600183C RID: 6204 RVA: 0x00052700 File Offset: 0x00050900
internal bool Contains(X509Certificate2 certificate)
{
for (int i = 0; i < this._list.Count; i++)
{
if (certificate.Equals((this._list[i] as X509ChainElement).Certificate))
{
return true;
}
}
return false;
}
// Token: 0x0400131A RID: 4890
private ArrayList _list;
}
}