001 package org.apache.commons.ssl.asn1; 002 003 import java.io.ByteArrayOutputStream; 004 import java.io.IOException; 005 import java.io.OutputStream; 006 007 public class DERSequenceGenerator 008 extends DERGenerator { 009 private final ByteArrayOutputStream _bOut = new ByteArrayOutputStream(); 010 011 public DERSequenceGenerator( 012 OutputStream out) 013 throws IOException { 014 super(out); 015 } 016 017 public DERSequenceGenerator( 018 OutputStream out, 019 int tagNo, 020 boolean isExplicit) 021 throws IOException { 022 super(out, tagNo, isExplicit); 023 } 024 025 public void addObject( 026 DEREncodable object) 027 throws IOException { 028 object.getDERObject().encode(new DEROutputStream(_bOut)); 029 } 030 031 public OutputStream getRawOutputStream() { 032 return _bOut; 033 } 034 035 public void close() 036 throws IOException { 037 writeDEREncoded(DERTags.CONSTRUCTED | DERTags.SEQUENCE, _bOut.toByteArray()); 038 } 039 }