DERConstructedSequence.java
上传用户:lior1029
上传日期:2013-05-07
资源大小:209k
文件大小:1k
源码类别:

CA认证

开发平台:

Java

  1. package org.bouncycastle.asn1;
  2. import java.io.*;
  3. import java.util.*;
  4. /**
  5.  * @deprecated use DERSequence.
  6.  */
  7. public class DERConstructedSequence
  8.     extends ASN1Sequence
  9. {
  10.     public void addObject(
  11.         DEREncodable obj)
  12.     {
  13.         super.addObject(obj);
  14.     }
  15.     public int getSize()
  16.     {
  17.         return size();
  18.     }
  19.     /*
  20.      * A note on the implementation:
  21.      * <p>
  22.      * As DER requires the constructed, definite-length model to
  23.      * be used for structured types, this varies slightly from the
  24.      * ASN.1 descriptions given. Rather than just outputing SEQUENCE,
  25.      * we also have to specify CONSTRUCTED, and the objects length.
  26.      */
  27.     void encode(
  28.         DEROutputStream out)
  29.         throws IOException
  30.     {
  31.         ByteArrayOutputStream   bOut = new ByteArrayOutputStream();
  32.         DEROutputStream         dOut = new DEROutputStream(bOut);
  33.         Enumeration             e = this.getObjects();
  34.         while (e.hasMoreElements())
  35.         {
  36.             Object    obj = e.nextElement();
  37.             dOut.writeObject(obj);
  38.         }
  39.         dOut.close();
  40.         byte[]  bytes = bOut.toByteArray();
  41.         out.writeEncoded(SEQUENCE | CONSTRUCTED, bytes);
  42.     }
  43. }