Module java.base

Interface Destroyable

All Known Subinterfaces:
DHPrivateKey, DSAPrivateKey, ECPrivateKey, EdECPrivateKey, PBEKey, PrivateKey, RSAMultiPrimePrivateCrtKey, RSAPrivateCrtKey, RSAPrivateKey, SecretKey, XECPrivateKey
All Known Implementing Classes:
EncryptionKey, KerberosCredMessage, KerberosKey, KerberosTicket, KeyStore.PasswordProtection, SecretKeySpec, X500PrivateCredential

public interface Destroyable
Objects such as credentials may optionally implement this interface to provide the capability to destroy its contents.
Since:
1.4
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    Destroy this Object.
    default boolean
    Determine if this Object has been destroyed.
  • Method Details

    • destroy

      default void destroy() throws DestroyFailedException
      Destroy this Object.

      Sensitive information associated with this Object is destroyed or cleared. Subsequent calls to certain methods on this Object will result in an IllegalStateException being thrown.

      Implementation Requirements:
      The default implementation throws DestroyFailedException.
      Throws:
      DestroyFailedException - if the destroy operation fails.
      SecurityException - if the caller does not have permission to destroy this Object.
    • isDestroyed

      default boolean isDestroyed()
      Determine if this Object has been destroyed.
      Implementation Requirements:
      The default implementation returns false.
      Returns:
      true if this Object has been destroyed, false otherwise.