KeyStorepublic abstract static class KeyStore.Builder extends Object
KeyStore object. An instance of this class encapsulates the information needed to instantiate and initialize a KeyStore object. That process is triggered when the getKeyStore() method is called. 
This makes it possible to decouple configuration from KeyStore object creation and e.g. delay a password prompt until it is needed.
| Modifier | Constructor | Description | 
|---|---|---|
| protected  | Construct a new  Builder. | 
| Modifier and Type | Method | Description | 
|---|---|---|
| abstract KeyStore | getKeyStore() | Returns the  KeyStoredescribed by this object. | 
| abstract KeyStore.ProtectionParameter | getProtectionParameter | Returns the  ProtectionParameterthat should be used to obtain theEntrywith the given alias. | 
| static KeyStore.Builder | newInstance | Returns a new  Builderobject. | 
| static KeyStore.Builder | newInstance | Returns a new  Builderobject. | 
| static KeyStore.Builder | newInstance | Returns a new  Builderobject. | 
| static KeyStore.Builder | newInstance | Returns a new  Builderthat encapsulates the givenKeyStore. | 
protected Builder()
Builder.public abstract KeyStore getKeyStore() throws KeyStoreException
KeyStore described by this object.KeyStore described by this objectKeyStoreException - if an error occurred during the operation, for example if the KeyStore could not be instantiated or loadedpublic abstract KeyStore.ProtectionParameter getProtectionParameter(String alias) throws KeyStoreException
ProtectionParameter that should be used to obtain the Entry with the given alias. The getKeyStore method must be invoked before this method may be called.alias - the alias of the KeyStore entryProtectionParameter that should be used to obtain the Entry with the given alias.NullPointerException - if alias is null
KeyStoreException - if an error occurred during the operationIllegalStateException - if the getKeyStore method has not been invoked prior to calling this methodpublic static KeyStore.Builder newInstance(KeyStore keyStore, KeyStore.ProtectionParameter protectionParameter)
Builder that encapsulates the given KeyStore. The getKeyStore() method of the returned object will return keyStore, the getProtectionParameter() method will return protectionParameters.  This is useful if an existing KeyStore object needs to be used with builder-based APIs.
keyStore - the KeyStore to be encapsulatedprotectionParameter - the ProtectionParameter used to protect the KeyStore entriesBuilder objectNullPointerException - if keyStore or protectionParameter is null
IllegalArgumentException - if the keyStore has not been initializedpublic static KeyStore.Builder newInstance(String type, Provider provider, File file, KeyStore.ProtectionParameter protection)
Builder object. The first call to the getKeyStore() method on the returned builder will create a KeyStore of type type and call its load() method. The inputStream argument is constructed from file. If protection is a PasswordProtection, the password is obtained by calling the getPassword method. Otherwise, if protection is a CallbackHandlerProtection, the password is obtained by invoking the CallbackHandler. 
Subsequent calls to getKeyStore() return the same object as the initial call. If the initial call failed with a KeyStoreException, subsequent calls also throw a KeyStoreException. 
The KeyStore is instantiated from provider if non-null. Otherwise, all installed providers are searched. 
Calls to getProtectionParameter() will return a PasswordProtection object encapsulating the password that was used to invoke the load method. 
Note that the getKeyStore() method is executed within the AccessControlContext of the code invoking this method.
type - the type of KeyStore to be constructedprovider - the provider from which the KeyStore is to be instantiated (or null)file - the File that contains the KeyStore dataprotection - the ProtectionParameter securing the KeyStore dataBuilder objectNullPointerException - if type, file or protection is null
IllegalArgumentException - if protection is not an instance of either PasswordProtection or CallbackHandlerProtection; or if file does not exist or does not refer to a normal filepublic static KeyStore.Builder newInstance(File file, KeyStore.ProtectionParameter protection)
Builder object. The first call to the getKeyStore() method on the returned builder will create a KeyStore using file to detect the keystore type and then call its load() method. It uses the same algorithm to determine the keystore type as described in KeyStore.getInstance(File, LoadStoreParameter). The inputStream argument is constructed from file. If protection is a PasswordProtection, the password is obtained by calling the getPassword method. Otherwise, if protection is a CallbackHandlerProtection, the password is obtained by invoking the CallbackHandler. 
Subsequent calls to getKeyStore() return the same object as the initial call. If the initial call failed with a KeyStoreException, subsequent calls also throw a KeyStoreException. 
Calls to getProtectionParameter() will return a PasswordProtection object encapsulating the password that was used to invoke the load method. 
Note that the getKeyStore() method is executed within the AccessControlContext of the code invoking this method.
file - the File that contains the KeyStore dataprotection - the ProtectionParameter securing the KeyStore dataBuilder objectNullPointerException - if file or protection is null
IllegalArgumentException - if protection is not an instance of either PasswordProtection or CallbackHandlerProtection; or if file does not exist or does not refer to a normal filepublic static KeyStore.Builder newInstance(String type, Provider provider, KeyStore.ProtectionParameter protection)
Builder object. Each call to the getKeyStore() method on the returned builder will return a new KeyStore object of type type. Its load() method is invoked using a LoadStoreParameter that encapsulates protection. 
The KeyStore is instantiated from provider if non-null. Otherwise, all installed providers are searched. 
Calls to getProtectionParameter() will return protection. 
Note that the getKeyStore() method is executed within the AccessControlContext of the code invoking this method.
type - the type of KeyStore to be constructedprovider - the provider from which the KeyStore is to be instantiated (or null)protection - the ProtectionParameter securing the Keystore
Builder objectNullPointerException - if type or protection is null
    © 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
    https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/security/KeyStore.Builder.html