Package com.io7m.cardant.error_codes

# Class CAException

java.lang.Object
java.lang.Throwable
java.lang.Exception
com.io7m.cardant.error_codes.CAException

All Implemented Interfaces:
  `com.io7m.seltzer.api.SStructuredErrorExceptionType<CAErrorCode>`, `com.io7m.seltzer.api.SStructuredErrorType<CAErrorCode>`, `Serializable`

Direct Known Subclasses:
  `CAClientException`, `CACommandExecutionFailure`, `CADatabaseException`, `CAHTTPErrorStatusException`, `CAProtocolException`, `CARequestLimitExceeded`, `CASecurityException`, `CAServerException`

public class CAException extends Exception implements com.io7m.seltzer.api.SStructuredErrorExceptionType<CAErrorCode>
The base type of exceptions.

See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `CAException(String message, CAErrorCode inErrorCode, Map<String,String> inAttributes, Optional<String> inRemediatingAction)`
  Construct an exception.
  `CAException(String message, Throwable cause, CAErrorCode inErrorCode, Map<String,String> inAttributes, Optional<String> inRemediatingAction)`
  Construct an exception.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final Map<String,String>`
  `attributes()`
  `final CAErrorCode`
  `errorCode()`
  `final Optional<Throwable>`
  `exception()`
  `final Optional<String>`
  `remediatingAction()`

  ### Methods inherited from class java.lang.Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface com.io7m.seltzer.api.SStructuredErrorExceptionType

  `getMessage, message`

- ## Constructor Details

  - ### CAException

    public CAException(String message, CAErrorCode inErrorCode, Map<String,String> inAttributes, Optional<String> inRemediatingAction)
    Construct an exception.
    Parameters:
      `message` - The message
      `inErrorCode` - The error code
      `inAttributes` - The error attributes
      `inRemediatingAction` - The remediating action, if any

  - ### CAException

    public CAException(String message, Throwable cause, CAErrorCode inErrorCode, Map<String,String> inAttributes, Optional<String> inRemediatingAction)
    Construct an exception.
    Parameters:
      `message` - The message
      `cause` - The cause
      `inErrorCode` - The error code
      `inAttributes` - The error attributes
      `inRemediatingAction` - The remediating action, if any

- ## Method Details

  - ### errorCode

    public final CAErrorCode errorCode()
    Specified by:
      `errorCode` in interface `com.io7m.seltzer.api.SStructuredErrorType<CAErrorCode>`

  - ### attributes

    public final Map<String,String> attributes()
    Specified by:
      `attributes` in interface `com.io7m.seltzer.api.SStructuredErrorType<CAErrorCode>`

  - ### remediatingAction

    public final Optional<String> remediatingAction()
    Specified by:
      `remediatingAction` in interface `com.io7m.seltzer.api.SStructuredErrorType<CAErrorCode>`

  - ### exception

    public final Optional<Throwable> exception()
    Specified by:
      `exception` in interface `com.io7m.seltzer.api.SStructuredErrorType<CAErrorCode>`