Class SdkServiceException

  • All Implemented Interfaces:
    Serializable, SdkPojo

    public class SdkServiceException
    extends SdkException
    implements SdkPojo
    Extension of SdkException that represents an error response returned by the requested downstream service. Receiving an exception of this type indicates that the caller's request was correctly transmitted to the service, but for some reason, the service was not able to process it, and returned an error response instead.

    SdkServiceException provides callers several pieces of information that can be used to obtain more information about the error and why it occurred.

    See Also:
    SdkClientException, Serialized Form
    • Method Detail

      • requestId

        public String requestId()
        The requestId that was returned by the called service.
        Returns:
        String containing the requestId
      • extendedRequestId

        public String extendedRequestId()
        The extendedRequestId that was returned by the called service.
        Returns:
        String ctontaining the extendedRequestId
      • statusCode

        public int statusCode()
        The status code that was returned by the called service.
        Returns:
        int containing the status code.
      • isClockSkewException

        public boolean isClockSkewException()
        Specifies whether an exception may have been caused by clock skew.
      • isThrottlingException

        public boolean isThrottlingException()
        Specifies whether an exception is caused by throttling. This method by default returns true if the status code is equal to 429 Too Many Requests but subclasses can override this method to signal that the specific subclass is considered a throttling exception.
        Returns:
        true if the exception is classified as throttling, otherwise false.
        See Also:
        isRetryableException()
      • isRetryableException

        public boolean isRetryableException()
        Specifies whether an exception is retryable. This method by default returns false but subclasses can override this value to signal that the specific subclass is considered retryable.
        Returns:
        true if the exception is classified as retryable, otherwise false.
        See Also:
        isThrottlingException()
      • sdkFields

        public List<SdkField<?>> sdkFields()
        Specified by:
        sdkFields in interface SdkPojo
        Returns:
        List of SdkField in this POJO. May be empty list but should never be null.