// 
// Decompiled by Procyon v0.6.0
// 

package org.bouncycastle.asn1;

import org.bouncycastle.util.io.Streams;
import java.io.IOException;
import java.io.InputStream;

@Deprecated
public class BEROctetStringParser implements ASN1OctetStringParser
{
    private ASN1StreamParser _parser;
    
    BEROctetStringParser(final ASN1StreamParser parser) {
        this._parser = parser;
    }
    
    @Override
    public InputStream getOctetStream() {
        return new ConstructedOctetStream(this._parser);
    }
    
    @Override
    public ASN1Primitive getLoadedObject() throws IOException {
        return parse(this._parser);
    }
    
    @Override
    public ASN1Primitive toASN1Primitive() {
        try {
            return this.getLoadedObject();
        }
        catch (final IOException ex) {
            throw new ASN1ParsingException("IOException converting stream to byte array: " + ex.getMessage(), ex);
        }
    }
    
    static BEROctetString parse(final ASN1StreamParser asn1StreamParser) throws IOException {
        return new BEROctetString(Streams.readAll(new ConstructedOctetStream(asn1StreamParser)));
    }
}
