diff options
Diffstat (limited to 'core/src/main/java/org/spongycastle/asn1/DEROctetStringParser.java')
-rw-r--r-- | core/src/main/java/org/spongycastle/asn1/DEROctetStringParser.java | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/core/src/main/java/org/spongycastle/asn1/DEROctetStringParser.java b/core/src/main/java/org/spongycastle/asn1/DEROctetStringParser.java new file mode 100644 index 00000000..59a82cd8 --- /dev/null +++ b/core/src/main/java/org/spongycastle/asn1/DEROctetStringParser.java @@ -0,0 +1,39 @@ +package org.spongycastle.asn1; + +import java.io.IOException; +import java.io.InputStream; + +public class DEROctetStringParser + implements ASN1OctetStringParser +{ + private DefiniteLengthInputStream stream; + + DEROctetStringParser( + DefiniteLengthInputStream stream) + { + this.stream = stream; + } + + public InputStream getOctetStream() + { + return stream; + } + + public ASN1Primitive getLoadedObject() + throws IOException + { + return new DEROctetString(stream.toByteArray()); + } + + public ASN1Primitive toASN1Primitive() + { + try + { + return getLoadedObject(); + } + catch (IOException e) + { + throw new ASN1ParsingException("IOException converting stream to byte array: " + e.getMessage(), e); + } + } +} |