Package org.apache.tomcat.util.net.jsse

## Class PEMFile

- java.lang.Object
- - org.apache.tomcat.util.net.jsse.PEMFile

-     public class PEMFile
      extends Object

  RFC 1421 PEM file containing X509 certificates or private keys.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `PEMFile​(String filename)` |
    `PEMFile​(String filename, InputStream fileStream, String password, String keyAlgorithm)` |
    `PEMFile​(String filename, String password)` |
    `PEMFile​(String filename, String password, String keyAlgorithm)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `List<X509Certificate>` | `getCertificates()` |
    `PrivateKey` | `getPrivateKey()` |
    `static String` | `toPEM​(X509Certificate certificate)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PEMFile

          public PEMFile​(String filename)
                  throws IOException,
                         GeneralSecurityException

      Throws:
        `IOException`
        `GeneralSecurityException`

    - #### PEMFile

          public PEMFile​(String filename,
                         String password)
                  throws IOException,
                         GeneralSecurityException

      Throws:
        `IOException`
        `GeneralSecurityException`

    - #### PEMFile

          public PEMFile​(String filename,
                         String password,
                         String keyAlgorithm)
                  throws IOException,
                         GeneralSecurityException

      Throws:
        `IOException`
        `GeneralSecurityException`

    - #### PEMFile

          public PEMFile​(String filename,
                         InputStream fileStream,
                         String password,
                         String keyAlgorithm)
                  throws IOException,
                         GeneralSecurityException

      Parameters:
        `filename` - the filename to mention in error messages, not used for anything else.
        `fileStream` - the stream containing the pem(s).
        `password` - password to load the pem objects.
        `keyAlgorithm` - the algorithm to help to know how to load the objects (guessed if null).
      Throws:
        `IOException` - if input can't be read.
        `GeneralSecurityException` - if input can't be parsed/loaded.

  - ### Method Detail

    - #### toPEM

          public static String toPEM​(X509Certificate certificate)
                              throws CertificateEncodingException

      Throws:
        `CertificateEncodingException`

    - #### getCertificates

          public List<X509Certificate> getCertificates()

    - #### getPrivateKey

          public PrivateKey getPrivateKey()