# Class CertificateRevokedException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.security.GeneralSecurityException
java.security.cert.CertificateException
java.security.cert.CertificateRevokedException

All Implemented Interfaces:
  `Serializable`

public class CertificateRevokedException extends CertificateException
An exception that indicates an X.509 certificate is revoked. A `CertificateRevokedException` contains additional information about the revoked certificate, such as the date on which the certificate was revoked and the reason it was revoked.

Since:
  1.7
See Also:
  - `CertPathValidatorException`
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`CertificateRevokedException(Date revocationDate, CRLReason reason, X500Principal authority, Map<String, Extension> extensions)`
Constructs a `CertificateRevokedException` with the specified revocation date, reason code, authority name, and map of extensions.

## Method Summary

Modifier and Type
Method
Description
`X500Principal`
`getAuthorityName()`
Returns the name of the authority that signed the certificate's revocation status information.
`Map<String, Extension>`
`getExtensions()`
Returns a map of X.509 extensions containing additional information about the revoked certificate, such as the Invalidity Date Extension.
`Date`
`getInvalidityDate()`
Returns the invalidity date, as specified in the Invalidity Date extension of this `CertificateRevokedException`.
`Date`
`getRevocationDate()`
Returns the date on which the certificate was revoked.
`CRLReason`
`getRevocationReason()`
Returns the reason the certificate was revoked.

### Methods declared in class Throwable

`addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`
Modifier and Type
Method
Description
`final void`
`addSuppressed(Throwable exception)`
Appends the specified exception to the exceptions that were suppressed in order to deliver this exception.
`Throwable`
`fillInStackTrace()`
Fills in the execution stack trace.
`Throwable`
`getCause()`
Returns the cause of this throwable or `null` if the cause is nonexistent or unknown.
`String`
`getLocalizedMessage()`
Creates a localized description of this throwable.
`String`
`getMessage()`
Returns the detail message string of this throwable.
`StackTraceElement[]`
`getStackTrace()`
Provides programmatic access to the stack trace information printed by `Throwable.printStackTrace()`.
`final Throwable[]`
`getSuppressed()`
Returns an array containing all of the exceptions that were suppressed, typically by the `try`-with-resources statement, in order to deliver this exception.
`Throwable`
`initCause(Throwable cause)`
Initializes the cause of this throwable to the specified value.
`void`
`printStackTrace()`
Prints this throwable and its backtrace to the standard error stream.
`void`
`printStackTrace(PrintStream s)`
Prints this throwable and its backtrace to the specified print stream.
`void`
`printStackTrace(PrintWriter s)`
Prints this throwable and its backtrace to the specified print writer.
`void`
`setStackTrace(StackTraceElement[] stackTrace)`
Sets the stack trace elements that will be returned by `Throwable.getStackTrace()` and printed by `Throwable.printStackTrace()` and related methods.
`String`
`toString()`
Returns a short description of this throwable.

### Methods declared in class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
Modifier and Type
Method
Description
`protected Object`
`clone()`
Creates and returns a copy of this object.
`boolean`
`equals(Object obj)`
Indicates whether some other object is "equal to" this one.
`protected void`
`finalize()`
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
`final Class<?>`
`getClass()`
Returns the runtime class of this `Object`.
`int`
`hashCode()`
Returns a hash code value for this object.
`final void`
`notify()`
Wakes up a single thread that is waiting on this object's monitor.
`final void`
`notifyAll()`
Wakes up all threads that are waiting on this object's monitor.
`final void`
`wait()`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
`final void`
`wait(long timeoutMillis)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
`final void`
`wait(long timeoutMillis, int nanos)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

## Constructor Details

### CertificateRevokedException

public CertificateRevokedException(Date revocationDate, CRLReason reason, X500Principal authority, Map<String, Extension> extensions)
Constructs a `CertificateRevokedException` with the specified revocation date, reason code, authority name, and map of extensions.

Parameters:
  `revocationDate` - the date on which the certificate was revoked. The date is copied to protect against subsequent modification.
  `reason` - the revocation reason
  `authority` - the `X500Principal` that represents the name of the authority that signed the certificate's revocation status information
  `extensions` - a map of X.509 Extensions. Each key is an OID String that maps to the corresponding Extension. The map is copied to prevent subsequent modification.
Throws:
  `NullPointerException` - if `revocationDate`, `reason`, `authority`, or `extensions` is `null`
  `ClassCastException` - if `extensions` contains an incorrectly typed key or value

## Method Details

### getRevocationDate

public Date getRevocationDate()
Returns the date on which the certificate was revoked. A new copy is returned each time the method is invoked to protect against subsequent modification.

Returns:
  the revocation date

### getRevocationReason

public CRLReason getRevocationReason()
Returns the reason the certificate was revoked.

Returns:
  the revocation reason

### getAuthorityName

public X500Principal getAuthorityName()
Returns the name of the authority that signed the certificate's revocation status information.

Returns:
  the `X500Principal` that represents the name of the authority that signed the certificate's revocation status information

### getInvalidityDate

public Date getInvalidityDate()
Returns the invalidity date, as specified in the Invalidity Date extension of this `CertificateRevokedException`. The invalidity date is the date on which it is known or suspected that the private key was compromised or that the certificate otherwise became invalid. This implementation calls `getExtensions()` and checks the returned map for an entry for the Invalidity Date extension OID ("2.5.29.24"). If found, it returns the invalidity date in the extension; otherwise null. A new Date object is returned each time the method is invoked to protect against subsequent modification.

Returns:
  the invalidity date, or `null` if not specified

### getExtensions

public Map<String, Extension> getExtensions()
Returns a map of X.509 extensions containing additional information about the revoked certificate, such as the Invalidity Date Extension. Each key is an OID String that maps to the corresponding Extension.

Returns:
  an unmodifiable map of X.509 extensions, or an empty map if there are no extensions