CertificateReqMessages
using Org.BouncyCastle.Asn1.Cmp;
using Org.BouncyCastle.Asn1.Crmf;
using System;
namespace Org.BouncyCastle.Crmf
{
public class CertificateReqMessages
{
private readonly CertReqMsg[] m_reqs;
public static CertificateReqMessages FromPkiBody(PkiBody pkiBody)
{
if (!IsCertificateRequestMessages(pkiBody.Type))
throw new ArgumentException("content of PKIBody wrong type: " + pkiBody.Type.ToString());
return new CertificateReqMessages(CertReqMessages.GetInstance(pkiBody.Content));
}
public static bool IsCertificateRequestMessages(int bodyType)
{
switch (bodyType) {
case 0:
case 2:
case 7:
case 9:
case 13:
return true;
default:
return false;
}
}
public CertificateReqMessages(CertReqMessages certReqMessages)
{
m_reqs = certReqMessages.ToCertReqMsgArray();
}
public virtual CertificateRequestMessage[] GetRequests()
{
return Array.ConvertAll(m_reqs, (CertReqMsg req) => new CertificateRequestMessage(req));
}
public virtual CertReqMessages ToAsn1Structure()
{
return new CertReqMessages(m_reqs);
}
}
}