diff options
Diffstat (limited to 'libraries/spongycastle/core/src/main/java/org/spongycastle/asn1/BEROutputStream.java')
-rw-r--r-- | libraries/spongycastle/core/src/main/java/org/spongycastle/asn1/BEROutputStream.java | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/libraries/spongycastle/core/src/main/java/org/spongycastle/asn1/BEROutputStream.java b/libraries/spongycastle/core/src/main/java/org/spongycastle/asn1/BEROutputStream.java new file mode 100644 index 000000000..13b20d523 --- /dev/null +++ b/libraries/spongycastle/core/src/main/java/org/spongycastle/asn1/BEROutputStream.java @@ -0,0 +1,36 @@ +package org.spongycastle.asn1; + +import java.io.IOException; +import java.io.OutputStream; + +public class BEROutputStream + extends DEROutputStream +{ + public BEROutputStream( + OutputStream os) + { + super(os); + } + + public void writeObject( + Object obj) + throws IOException + { + if (obj == null) + { + writeNull(); + } + else if (obj instanceof ASN1Primitive) + { + ((ASN1Primitive)obj).encode(this); + } + else if (obj instanceof ASN1Encodable) + { + ((ASN1Encodable)obj).toASN1Primitive().encode(this); + } + else + { + throw new IOException("object not BEREncodable"); + } + } +} |