public async Task Add(X509Certificate2 certificate)
{
if (certificate == null) throw new ArgumentNullException("certificate");
for (int ii = 0; ii < this.Count; ii++)
{
X509Certificate2 current = await this[ii].Find(false);
if (current != null && current.Thumbprint == certificate.Thumbprint)
{
throw ServiceResultException.Create(
StatusCodes.BadEntryExists,
"A certificate with the specified thumbprint already exists. Subject={0}, Thumbprint={1}",
certificate.SubjectName,
certificate.Thumbprint);
}
}
this.Add(new CertificateIdentifier(certificate));
}