CRLReason (Java SE 23 & JDK 23)
Description: declaration: module: java.base, package: java.security.cert, enum: CRLReason
Keywords: java.security.cert.CRLReason class

# Enum Class CRLReason

java.lang.Object
java.lang.Enum<CRLReason>
java.security.cert.CRLReason

All Implemented Interfaces:
  `Serializable`, `Comparable<CRLReason>`, `Constable`

public enum CRLReason extends Enum<CRLReason>
The CRLReason enumeration specifies the reason that a certificate is revoked, as defined in RFC 5280: Internet X.509 Public Key Infrastructure Certificate and CRL Profile.

Since:
  1.7
See Also:
  - `X509CRLEntry.getRevocationReason()`
  - `CertificateRevokedException.getRevocationReason()`

- ## Nested Class Summary

  ### Nested classes/interfaces declared in class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `AA_COMPROMISE`
  This reason indicates that it is known or suspected that the certificate subject's private key has been compromised.
  `AFFILIATION_CHANGED`
  This reason indicates that the subject's name or other information has changed.
  `CA_COMPROMISE`
  This reason indicates that it is known or suspected that the certificate subject's private key has been compromised.
  `CERTIFICATE_HOLD`
  This reason indicates that the certificate has been put on hold.
  `CESSATION_OF_OPERATION`
  This reason indicates that the certificate is no longer needed.
  `KEY_COMPROMISE`
  This reason indicates that it is known or suspected that the certificate subject's private key has been compromised.
  `PRIVILEGE_WITHDRAWN`
  This reason indicates that the privileges granted to the subject of the certificate have been withdrawn.
  `REMOVE_FROM_CRL`
  This reason indicates that the certificate was previously on hold and should be removed from the CRL.
  `SUPERSEDED`
  This reason indicates that the certificate has been superseded.
  `UNSPECIFIED`
  This reason indicates that it is unspecified as to why the certificate has been revoked.
  `UNUSED`
  Unused reason.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static CRLReason`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static CRLReason[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods declared in class java.lang.Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

  ### Methods declared in class java.lang.Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### UNSPECIFIED

    public static final CRLReason UNSPECIFIED
    This reason indicates that it is unspecified as to why the certificate has been revoked.

  - ### KEY_COMPROMISE

    public static final CRLReason KEY_COMPROMISE
    This reason indicates that it is known or suspected that the certificate subject's private key has been compromised. It applies to end-entity certificates only.

  - ### CA_COMPROMISE

    public static final CRLReason CA_COMPROMISE
    This reason indicates that it is known or suspected that the certificate subject's private key has been compromised. It applies to certificate authority (CA) certificates only.

  - ### AFFILIATION_CHANGED

    public static final CRLReason AFFILIATION_CHANGED
    This reason indicates that the subject's name or other information has changed.

  - ### SUPERSEDED

    public static final CRLReason SUPERSEDED
    This reason indicates that the certificate has been superseded.

  - ### CESSATION_OF_OPERATION

    public static final CRLReason CESSATION_OF_OPERATION
    This reason indicates that the certificate is no longer needed.

  - ### CERTIFICATE_HOLD

    public static final CRLReason CERTIFICATE_HOLD
    This reason indicates that the certificate has been put on hold.

  - ### UNUSED

    public static final CRLReason UNUSED
    Unused reason.

  - ### REMOVE_FROM_CRL

    public static final CRLReason REMOVE_FROM_CRL
    This reason indicates that the certificate was previously on hold and should be removed from the CRL. It is for use with delta CRLs.

  - ### PRIVILEGE_WITHDRAWN

    public static final CRLReason PRIVILEGE_WITHDRAWN
    This reason indicates that the privileges granted to the subject of the certificate have been withdrawn.

  - ### AA_COMPROMISE

    public static final CRLReason AA_COMPROMISE
    This reason indicates that it is known or suspected that the certificate subject's private key has been compromised. It applies to authority attribute (AA) certificates only.

- ## Method Details

  - ### values

    public static CRLReason[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static CRLReason valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum class has no constant with the specified name
      `NullPointerException` - if the argument is null