- Enclosing class:
- KeyStore
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.
- Since:
- 1.5
- See Also:
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionabstract KeyStoreReturns theKeyStoredescribed by this object.abstract KeyStore.ProtectionParametergetProtectionParameter(String alias) Returns theProtectionParameterthat should be used to obtain theEntrywith the given alias.static KeyStore.BuildernewInstance(File file, KeyStore.ProtectionParameter protection) Returns a newBuilderobject.static KeyStore.BuildernewInstance(String type, Provider provider, File file, KeyStore.ProtectionParameter protection) Returns a newBuilderobject.static KeyStore.BuildernewInstance(String type, Provider provider, KeyStore.ProtectionParameter protection) Returns a newBuilderobject.static KeyStore.BuildernewInstance(KeyStore keyStore, KeyStore.ProtectionParameter protectionParameter) Returns a newBuilderthat encapsulates the givenKeyStore.
- 
Constructor Details- 
Builderprotected Builder()Construct a newBuilder.
 
- 
- 
Method Details- 
getKeyStoreReturns theKeyStoredescribed by this object.- Returns:
- the KeyStoredescribed by this object
- Throws:
- KeyStoreException- if an error occurred during the operation, for example if the- KeyStorecould not be instantiated or loaded
 
- 
getProtectionParameterpublic abstract KeyStore.ProtectionParameter getProtectionParameter(String alias) throws KeyStoreException Returns theProtectionParameterthat should be used to obtain theEntrywith the given alias. ThegetKeyStoremethod must be invoked before this method may be called.- Parameters:
- alias- the alias of the- KeyStoreentry
- Returns:
- the ProtectionParameterthat should be used to obtain theEntrywith the given alias.
- Throws:
- NullPointerException- if alias is- null
- KeyStoreException- if an error occurred during the operation
- IllegalStateException- if the- getKeyStoremethod has not been invoked prior to calling this method
 
- 
newInstancepublic static KeyStore.Builder newInstance(KeyStore keyStore, KeyStore.ProtectionParameter protectionParameter) Returns a newBuilderthat encapsulates the givenKeyStore. The getKeyStore() method of the returned object will returnkeyStore, the getProtectionParameter() method will returnprotectionParameters.This is useful if an existing KeyStoreobject needs to be used with builder-based APIs.- Parameters:
- keyStore- the- KeyStoreto be encapsulated
- protectionParameter- the- ProtectionParameterused to protect the- KeyStoreentries
- Returns:
- a new Builderobject
- Throws:
- NullPointerException- if- keyStoreor- protectionParameteris- null
- IllegalArgumentException- if the- keyStorehas not been initialized
 
- 
newInstancepublic static KeyStore.Builder newInstance(String type, Provider provider, File file, KeyStore.ProtectionParameter protection) Returns a newBuilderobject.The first call to the getKeyStore()method on the returned builder will create aKeyStoreof typetypeand call itsload()method. TheinputStreamargument is constructed fromfile. Ifprotectionis aPasswordProtection, the password is obtained by calling thegetPasswordmethod. Otherwise, ifprotectionis aCallbackHandlerProtection, 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 aKeyStoreException, subsequent calls also throw aKeyStoreException.The KeyStoreis instantiated fromproviderif non-null. Otherwise, all installed providers are searched.Calls to getProtectionParameter()will return aPasswordProtectionobject encapsulating the password that was used to invoke theloadmethod.Note that the getKeyStore()method is executed within theAccessControlContextof the code invoking this method.- Parameters:
- type- the type of- KeyStoreto be constructed
- provider- the provider from which the- KeyStoreis to be instantiated (or- null)
- file- the File that contains the- KeyStoredata
- protection- the- ProtectionParametersecuring the- KeyStoredata
- Returns:
- a new Builderobject
- Throws:
- NullPointerException- 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 file
 
- 
newInstanceReturns a newBuilderobject.The first call to the getKeyStore()method on the returned builder will create aKeyStoreusingfileto detect the keystore type and then call itsload()method. It uses the same algorithm to determine the keystore type as described inKeyStore.getInstance(File, LoadStoreParameter). TheinputStreamargument is constructed fromfile. Ifprotectionis aPasswordProtection, the password is obtained by calling thegetPasswordmethod. Otherwise, ifprotectionis aCallbackHandlerProtection, 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 aKeyStoreException, subsequent calls also throw aKeyStoreException.Calls to getProtectionParameter()will return aPasswordProtectionobject encapsulating the password that was used to invoke theloadmethod.Note that the getKeyStore()method is executed within theAccessControlContextof the code invoking this method.- Parameters:
- file- the File that contains the- KeyStoredata
- protection- the- ProtectionParametersecuring the- KeyStoredata
- Returns:
- a new Builderobject
- Throws:
- NullPointerException- 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 file
- Since:
- 9
 
- 
newInstancepublic static KeyStore.Builder newInstance(String type, Provider provider, KeyStore.ProtectionParameter protection) Returns a newBuilderobject.Each call to the getKeyStore()method on the returned builder will return a newKeyStoreobject of typetype. Itsload()method is invoked using aLoadStoreParameterthat encapsulatesprotection.The KeyStoreis instantiated fromproviderif non-null. Otherwise, all installed providers are searched.Calls to getProtectionParameter()will returnprotection.Note that the getKeyStore()method is executed within theAccessControlContextof the code invoking this method.- Parameters:
- type- the type of- KeyStoreto be constructed
- provider- the provider from which the- KeyStoreis to be instantiated (or- null)
- protection- the- ProtectionParametersecuring the- Keystore
- Returns:
- a new Builderobject
- Throws:
- NullPointerException- if type or protection is- null
 
 
-