io.gatling.recorder.internal.bouncycastle.cert.cmp.CMSProcessableCMPCertificate Maven / Gradle / Ivy
package io.gatling.recorder.internal.bouncycastle.cert.cmp;
import java.io.IOException;
import java.io.OutputStream;
import io.gatling.recorder.internal.bouncycastle.asn1.ASN1ObjectIdentifier;
import io.gatling.recorder.internal.bouncycastle.asn1.cmp.CMPCertificate;
import io.gatling.recorder.internal.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers;
import io.gatling.recorder.internal.bouncycastle.cert.X509CertificateHolder;
import io.gatling.recorder.internal.bouncycastle.cms.CMSException;
import io.gatling.recorder.internal.bouncycastle.cms.CMSTypedData;
/**
* Carrier class for a CMPCertificate over CMS.
*/
public class CMSProcessableCMPCertificate
implements CMSTypedData
{
private final CMPCertificate cmpCert;
public CMSProcessableCMPCertificate(X509CertificateHolder certificateHolder)
{
this(new CMPCertificate(certificateHolder.toASN1Structure()));
}
public CMSProcessableCMPCertificate(CMPCertificate cmpCertificate)
{
this.cmpCert = cmpCertificate;
}
@Override
public void write(OutputStream out)
throws IOException, CMSException
{
out.write(cmpCert.getEncoded());
}
@Override
public Object getContent()
{
return cmpCert;
}
@Override
public ASN1ObjectIdentifier getContentType()
{
return PKCSObjectIdentifiers.data;
}
}