org.apache.tomcat.util.net.jsse

## Class NioX509KeyManager

- java.lang.Object
- - javax.net.ssl.X509ExtendedKeyManager
  - - org.apache.tomcat.util.net.jsse.NioX509KeyManager

- All Implemented Interfaces:
    javax.net.ssl.KeyManager, javax.net.ssl.X509KeyManager

      public class NioX509KeyManager
      extends javax.net.ssl.X509ExtendedKeyManager

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `NioX509KeyManager(javax.net.ssl.X509KeyManager mgr, java.lang.String serverKeyAlias)` Constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `chooseClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, java.net.Socket socket)`
    `java.lang.String` | `chooseEngineServerAlias(java.lang.String keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)`
    `java.lang.String` | `chooseServerAlias(java.lang.String keyType, java.security.Principal[] issuers, java.net.Socket socket)`
    `java.security.cert.X509Certificate[]` | `getCertificateChain(java.lang.String alias)`
    `java.lang.String[]` | `getClientAliases(java.lang.String keyType, java.security.Principal[] issuers)`
    `java.security.PrivateKey` | `getPrivateKey(java.lang.String alias)`
    `java.lang.String[]` | `getServerAliases(java.lang.String keyType, java.security.Principal[] issuers)`

    - ### Methods inherited from class javax.net.ssl.X509ExtendedKeyManager

      `chooseEngineClientAlias`

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

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

- - ### Constructor Detail

    - #### NioX509KeyManager

          public NioX509KeyManager(javax.net.ssl.X509KeyManager mgr,
                           java.lang.String serverKeyAlias)

      Constructor.
      Parameters:
        `mgr` - The X509KeyManager used as a delegate
        `serverKeyAlias` - The alias name of the server's keypair and supporting certificate chain

  - ### Method Detail

    - #### chooseClientAlias

          public java.lang.String chooseClientAlias(java.lang.String[] keyType,
                                           java.security.Principal[] issuers,
                                           java.net.Socket socket)

    - #### chooseServerAlias

          public java.lang.String chooseServerAlias(java.lang.String keyType,
                                           java.security.Principal[] issuers,
                                           java.net.Socket socket)

    - #### getCertificateChain

          public java.security.cert.X509Certificate[] getCertificateChain(java.lang.String alias)

    - #### getClientAliases

          public java.lang.String[] getClientAliases(java.lang.String keyType,
                                            java.security.Principal[] issuers)

    - #### getPrivateKey

          public java.security.PrivateKey getPrivateKey(java.lang.String alias)

    - #### getServerAliases

          public java.lang.String[] getServerAliases(java.lang.String keyType,
                                            java.security.Principal[] issuers)

    - #### chooseEngineServerAlias

          public java.lang.String chooseEngineServerAlias(java.lang.String keyType,
                                                 java.security.Principal[] issuers,
                                                 javax.net.ssl.SSLEngine engine)

      Overrides:
        `chooseEngineServerAlias` in class `javax.net.ssl.X509ExtendedKeyManager`

Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.