Class CachedPEMReader

java.lang.Object
java.io.Reader
java.io.BufferedReader
org.bouncycastle.util.io.pem.PemReader
org.bouncycastle.openssl.PEMParser
eu.emi.security.authn.x509.helpers.CachedPEMReader
All Implemented Interfaces:
Closeable, AutoCloseable, Readable

public class CachedPEMReader extends org.bouncycastle.openssl.PEMParser
This class extends the PEMParser class from the BC library. It is modified to use the provided PemObject (it is done to optimize the code: pem is not read twice) as otherwise BC's parsers code would need to be copied. The reader is bootstraped with the data from the PemObject.

This class interface is the readObject method.

This implementation overrides the PEMParser readPemObject method to return a provided PemObject. The Reader used by the PEMParser is not used.

Author:
K. Benedyczak
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected org.bouncycastle.util.io.pem.PemObject
     

    Fields inherited from class org.bouncycastle.openssl.PEMParser

    parsers, TYPE_ATTRIBUTE_CERTIFICATE, TYPE_CERTIFICATE, TYPE_CERTIFICATE_REQUEST, TYPE_CMS, TYPE_DSA_PRIVATE_KEY, TYPE_EC_PARAMETERS, TYPE_EC_PRIVATE_KEY, TYPE_ENCRYPTED_PRIVATE_KEY, TYPE_NEW_CERTIFICATE_REQUEST, TYPE_PKCS7, TYPE_PRIVATE_KEY, TYPE_PUBLIC_KEY, TYPE_RSA_PRIVATE_KEY, TYPE_RSA_PUBLIC_KEY, TYPE_TRUSTED_CERTIFICATE, TYPE_X509_CERTIFICATE, TYPE_X509_CRL

    Fields inherited from class java.io.Reader

    lock
  • Constructor Summary

    Constructors
    Constructor
    Description
    CachedPEMReader(org.bouncycastle.util.io.pem.PemObject pem)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.bouncycastle.util.io.pem.PemObject
    Generate BC's PemObject from the input stream.

    Methods inherited from class org.bouncycastle.openssl.PEMParser

    getSupportedTypes, readObject

    Methods inherited from class java.io.BufferedReader

    close, lines, mark, markSupported, read, read, readLine, ready, reset, skip

    Methods inherited from class java.io.Reader

    nullReader, read, read, transferTo

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • pem

      protected org.bouncycastle.util.io.pem.PemObject pem
  • Constructor Details

    • CachedPEMReader

      public CachedPEMReader(org.bouncycastle.util.io.pem.PemObject pem)
  • Method Details

    • readPemObject

      public org.bouncycastle.util.io.pem.PemObject readPemObject() throws IOException
      Generate BC's PemObject from the input stream.
      Overrides:
      readPemObject in class org.bouncycastle.util.io.pem.PemReader
      Returns:
      the parsed PEM object
      Throws:
      IOException - IO exception