Module java.base

Interface Destroyable

All Known Subinterfaces:
DHPrivateKey, DSAPrivateKey, ECPrivateKey, 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:
Subject
  • Method Summary

    Modifier and Type Method Description
    default void destroy()
    Destroy this Object.
    default boolean isDestroyed()
    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.