001package org.apache.commons.ssl.org.bouncycastle.asn1.crmf; 002 003import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1EncodableVector; 004import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1Object; 005import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1Primitive; 006import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1Sequence; 007import org.apache.commons.ssl.org.bouncycastle.asn1.DERSequence; 008 009public class CertReqMessages 010 extends ASN1Object 011{ 012 private ASN1Sequence content; 013 014 private CertReqMessages(ASN1Sequence seq) 015 { 016 content = seq; 017 } 018 019 public static CertReqMessages getInstance(Object o) 020 { 021 if (o instanceof CertReqMessages) 022 { 023 return (CertReqMessages)o; 024 } 025 026 if (o != null) 027 { 028 return new CertReqMessages(ASN1Sequence.getInstance(o)); 029 } 030 031 return null; 032 } 033 034 public CertReqMessages( 035 CertReqMsg msg) 036 { 037 content = new DERSequence(msg); 038 } 039 040 public CertReqMessages( 041 CertReqMsg[] msgs) 042 { 043 ASN1EncodableVector v = new ASN1EncodableVector(); 044 for (int i = 0; i < msgs.length; i++) 045 { 046 v.add(msgs[i]); 047 } 048 content = new DERSequence(v); 049 } 050 051 public CertReqMsg[] toCertReqMsgArray() 052 { 053 CertReqMsg[] result = new CertReqMsg[content.size()]; 054 055 for (int i = 0; i != result.length; i++) 056 { 057 result[i] = CertReqMsg.getInstance(content.getObjectAt(i)); 058 } 059 060 return result; 061 } 062 063 /** 064 * <pre> 065 * CertReqMessages ::= SEQUENCE SIZE (1..MAX) OF CertReqMsg 066 * </pre> 067 * 068 * @return a basic ASN.1 object representation. 069 */ 070 public ASN1Primitive toASN1Primitive() 071 { 072 return content; 073 } 074}