package org.keysupport.bc.scvp.asn1; import org.bouncycastle.asn1.ASN1EncodableVector; import org.bouncycastle.asn1.ASN1Object; import org.bouncycastle.asn1.ASN1Primitive; import org.bouncycastle.asn1.ASN1Sequence; import org.bouncycastle.asn1.DERSequence; import org.bouncycastle.asn1.DERUTF8String; /* * ResponseStatus ::= SEQUENCE { statusCode CVStatusCode DEFAULT okay, errorMessage UTF8String OPTIONAL } */ public class ResponseStatus extends ASN1Object { private ASN1Sequence value = null; private CVStatusCode statusCode = null; private DERUTF8String errorMessage = null; private ResponseStatus(ASN1Sequence value) { this.value = value; } public ResponseStatus(CVStatusCode statusCode, DERUTF8String errorMessage) { this.statusCode = statusCode; this.errorMessage = errorMessage; } public static ResponseStatus getInstance(Object obj) { if (obj instanceof ResponseStatus) { return (ResponseStatus) obj; } else if (obj != null) { return new ResponseStatus(ASN1Sequence.getInstance(obj)); } return null; } @Override public ASN1Primitive toASN1Primitive() { ASN1EncodableVector v = new ASN1EncodableVector(); v.add(statusCode); if (errorMessage!= null) { v.add(errorMessage); } return new DERSequence(v); } }