Package jakarta.ws.rs

Class ServiceUnavailableException

All Implemented Interfaces:
Serializable

public class ServiceUnavailableException
extends ServerErrorException
A runtime exception indicating that the requested resource cannot be served.
Since:
2.0
Author:
Marek Potociar
See Also:
Serialized Form
  • Constructor Details

    • ServiceUnavailableException

      public ServiceUnavailableException()
      Construct a new "service unavailable" exception without any "Retry-After" information specified for the failed request.
    • ServiceUnavailableException

      public ServiceUnavailableException​(String message)
      Construct a new "service unavailable" exception without any "Retry-After" information specified for the failed request.
      Parameters:
      message - the detail message (which is saved for later retrieval by the Throwable.getMessage() method).
    • ServiceUnavailableException

      public ServiceUnavailableException​(Long retryAfter)
      Construct a new "service unavailable" exception with an interval specifying the "Retry-After" information for the failed request.
      Parameters:
      retryAfter - decimal interval in seconds after which the failed request may be retried.
    • ServiceUnavailableException

      public ServiceUnavailableException​(String message, Long retryAfter)
      Construct a new "service unavailable" exception with an interval specifying the "Retry-After" information for the failed request.
      Parameters:
      message - the detail message (which is saved for later retrieval by the Throwable.getMessage() method).
      retryAfter - decimal interval in seconds after which the failed request may be retried.
    • ServiceUnavailableException

      public ServiceUnavailableException​(Date retryAfter)
      Construct a new "service unavailable" exception with an interval specifying the "Retry-After" information for the failed request.
      Parameters:
      retryAfter - a date/time after which the failed request may be retried.
    • ServiceUnavailableException

      public ServiceUnavailableException​(String message, Date retryAfter)
      Construct a new "service unavailable" exception with an interval specifying the "Retry-After" information for the failed request.
      Parameters:
      message - the detail message (which is saved for later retrieval by the Throwable.getMessage() method).
      retryAfter - a date/time after which the failed request may be retried.
    • ServiceUnavailableException

      public ServiceUnavailableException​(Response response)
      Construct a new "service unavailable" exception.
      Parameters:
      response - error response.
      Throws:
      IllegalArgumentException - in case the status code set in the response is not HTTP 503.
    • ServiceUnavailableException

      public ServiceUnavailableException​(String message, Response response)
      Construct a new "service unavailable" exception.
      Parameters:
      message - the detail message (which is saved for later retrieval by the Throwable.getMessage() method).
      response - error response.
      Throws:
      IllegalArgumentException - in case the status code set in the response is not HTTP 503.
    • ServiceUnavailableException

      public ServiceUnavailableException​(Date retryAfter, Throwable cause)
      Construct a new "service unavailable" exception with a date specifying the "Retry-After" information for the failed request and an underlying request failure cause.
      Parameters:
      retryAfter - a date/time after which the failed request may be retried.
      cause - the underlying cause of the exception.
    • ServiceUnavailableException

      public ServiceUnavailableException​(String message, Date retryAfter, Throwable cause)
      Construct a new "service unavailable" exception with a date specifying the "Retry-After" information for the failed request and an underlying request failure cause.
      Parameters:
      message - the detail message (which is saved for later retrieval by the Throwable.getMessage() method).
      retryAfter - a date/time after which the failed request may be retried.
      cause - the underlying cause of the exception.
    • ServiceUnavailableException

      public ServiceUnavailableException​(Long retryAfter, Throwable cause)
      Construct a new "service unavailable" exception with an interval specifying the "Retry-After" information for the failed request and an underlying request failure cause.
      Parameters:
      retryAfter - decimal interval in seconds after which the failed request may be retried.
      cause - the underlying cause of the exception.
    • ServiceUnavailableException

      public ServiceUnavailableException​(String message, Long retryAfter, Throwable cause)
      Construct a new "service unavailable" exception with an interval specifying the "Retry-After" information for the failed request and an underlying request failure cause.
      Parameters:
      message - the detail message (which is saved for later retrieval by the Throwable.getMessage() method).
      retryAfter - decimal interval in seconds after which the failed request may be retried.
      cause - the underlying cause of the exception.
    • ServiceUnavailableException

      public ServiceUnavailableException​(Response response, Throwable cause)
      Construct a new "service unavailable" exception.
      Parameters:
      response - error response.
      cause - the underlying cause of the exception.
      Throws:
      IllegalArgumentException - in case the status code set in the response is not HTTP 503.
    • ServiceUnavailableException

      public ServiceUnavailableException​(String message, Response response, Throwable cause)
      Construct a new "service unavailable" exception.
      Parameters:
      message - the detail message (which is saved for later retrieval by the Throwable.getMessage() method).
      response - error response.
      cause - the underlying cause of the exception.
      Throws:
      IllegalArgumentException - in case the status code set in the response is not HTTP 503.
  • Method Details

    • hasRetryAfter

      public boolean hasRetryAfter()
      Check if the underlying response contains the information on when is it possible to retry the request.
      Returns:
      true in case the retry time is specified in the underlying response, false otherwise.
    • getRetryTime

      public Date getRetryTime​(Date requestTime)
      Get the retry time for the failed request.
      Parameters:
      requestTime - time of sending the original request that may be used to compute the retry time (in case the retry time information specified as a decimal interval in seconds).
      Returns:
      time when the request may be retried or null if there is no retry information available.
      Throws:
      NullPointerException - in case the requestTime parameter is null.