// 
// Decompiled by Procyon v0.6.0
// 

package org.bouncycastle.its.bc;

import org.bouncycastle.its.ITSPublicEncryptionKey;
import org.bouncycastle.its.ITSPublicVerificationKey;
import org.bouncycastle.crypto.params.AsymmetricKeyParameter;
import org.bouncycastle.its.ITSCertificate;
import org.bouncycastle.crypto.params.ECPublicKeyParameters;
import org.bouncycastle.oer.its.ieee1609dot2.CertificateId;
import org.bouncycastle.oer.its.ieee1609dot2.ToBeSignedCertificate;
import org.bouncycastle.its.operator.ITSContentSigner;
import org.bouncycastle.its.ITSExplicitCertificateBuilder;

public class BcITSExplicitCertificateBuilder extends ITSExplicitCertificateBuilder
{
    public BcITSExplicitCertificateBuilder(final ITSContentSigner itsContentSigner, final ToBeSignedCertificate.Builder builder) {
        super(itsContentSigner, builder);
    }
    
    public ITSCertificate build(final CertificateId certificateId, final ECPublicKeyParameters ecPublicKeyParameters) {
        return this.build(certificateId, ecPublicKeyParameters, null);
    }
    
    public ITSCertificate build(final CertificateId certificateId, final ECPublicKeyParameters ecPublicKeyParameters, final ECPublicKeyParameters ecPublicKeyParameters2) {
        ITSPublicEncryptionKey itsPublicEncryptionKey = null;
        if (ecPublicKeyParameters2 != null) {
            itsPublicEncryptionKey = new BcITSPublicEncryptionKey(ecPublicKeyParameters2);
        }
        return super.build(certificateId, new BcITSPublicVerificationKey(ecPublicKeyParameters), itsPublicEncryptionKey);
    }
}
