All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.bouncycastle.asn1.dvcs.DVCSResponse Maven / Gradle / Ivy

Go to download

The Bouncy Castle Java APIs for ASN.1 extension and utility APIs used to support bcpkix and bctls with the BC FIPS provider. The APIs may also be used with other providers although if being used in a FIPS context it is the responsibility of the user to ensure that any other providers used are FIPS certified and used appropriately.

There is a newer version: 2.0.3
Show newest version
package org.bouncycastle.asn1.dvcs;

import java.io.IOException;

import org.bouncycastle.asn1.ASN1Choice;
import org.bouncycastle.asn1.ASN1Object;
import org.bouncycastle.asn1.ASN1Primitive;
import org.bouncycastle.asn1.ASN1Sequence;
import org.bouncycastle.asn1.ASN1TaggedObject;
import org.bouncycastle.asn1.DERTaggedObject;

/**
 * 
 *     DVCSResponse ::= CHOICE
 *     {
 *         dvCertInfo         DVCSCertInfo ,
 *         dvErrorNote        [0] DVCSErrorNotice
 *     }
 * 
*/ public class DVCSResponse extends ASN1Object implements ASN1Choice { private DVCSCertInfo dvCertInfo; private DVCSErrorNotice dvErrorNote; public DVCSResponse(DVCSCertInfo dvCertInfo) { this.dvCertInfo = dvCertInfo; } public DVCSResponse(DVCSErrorNotice dvErrorNote) { this.dvErrorNote = dvErrorNote; } public static DVCSResponse getInstance(Object obj) { if (obj == null || obj instanceof DVCSResponse) { return (DVCSResponse)obj; } else { if (obj instanceof byte[]) { try { return getInstance(ASN1Primitive.fromByteArray((byte[])obj)); } catch (IOException e) { throw new IllegalArgumentException("failed to construct sequence from byte[]: " + e.getMessage()); } } if (obj instanceof ASN1Sequence) { DVCSCertInfo dvCertInfo = DVCSCertInfo.getInstance(obj); return new DVCSResponse(dvCertInfo); } if (obj instanceof ASN1TaggedObject) { ASN1TaggedObject t = ASN1TaggedObject.getInstance(obj); DVCSErrorNotice dvErrorNote = DVCSErrorNotice.getInstance(t, false); return new DVCSResponse(dvErrorNote); } } throw new IllegalArgumentException("Couldn't convert from object to DVCSResponse: " + obj.getClass().getName()); } public static DVCSResponse getInstance( ASN1TaggedObject obj, boolean explicit) { return getInstance(ASN1Sequence.getInstance(obj, explicit)); } public DVCSCertInfo getCertInfo() { return dvCertInfo; } public DVCSErrorNotice getErrorNotice() { return dvErrorNote; } public ASN1Primitive toASN1Primitive() { if (dvCertInfo != null) { return dvCertInfo.toASN1Primitive(); } else { return new DERTaggedObject(false, 0, dvErrorNote); } } public String toString() { if (dvCertInfo != null) { return "DVCSResponse {\ndvCertInfo: " + dvCertInfo.toString() + "}\n"; } else { return "DVCSResponse {\ndvErrorNote: " + dvErrorNote.toString() + "}\n"; } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy