    001package org.apache.commons.ssl.asn1;
    002
    003import java.io.IOException;
    004import java.util.Enumeration;
    005
    006public class BERSequence
    007    extends DERSequence {
    008    /** create an empty sequence */
    009    public BERSequence() {
    010    }
    011
    012    /** create a sequence containing one object */
    013    public BERSequence(
    014        DEREncodable obj) {
    015        super(obj);
    016    }
    017
    018    /** create a sequence containing a vector of objects. */
    019    public BERSequence(
    020        DEREncodableVector v) {
    021        super(v);
    022    }
    023
    024    /*
    025     */
    026    void encode(
    027        DEROutputStream out)
    028        throws IOException {
    029        if (out instanceof ASN1OutputStream || out instanceof BEROutputStream) {
    030            out.write(SEQUENCE | CONSTRUCTED);
    031            out.write(0x80);
    032
    033            Enumeration e = getObjects();
    034            while (e.hasMoreElements()) {
    035                out.writeObject(e.nextElement());
    036            }
    037
    038            out.write(0x00);
    039            out.write(0x00);
    040        } else {
    041            super.encode(out);
    042        }
    043    }
    044}