Package com.castlabs.android.drm

# Class DrmException

java.lang.Object
java.lang.Throwable
java.lang.Exception
com.castlabs.android.drm.DrmTodayException
com.castlabs.android.drm.DrmException

All Implemented Interfaces:
  `Serializable`

public class DrmException extends DrmTodayException
Represents an exception that occurred during a DRM operation.

See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class com.castlabs.android.drm.DrmTodayException

  `DrmTodayException.ErrorCode`

- ## Field Summary

  ### Fields inherited from class com.castlabs.android.drm.DrmTodayException

  `ERROR_DEVICE_TIME, ERROR_INVALID_REQUEST, ERROR_IO_ERROR, ERROR_KEY_NOT_FOUND, ERROR_NOT_AUTHORIZED, ERROR_PROVISIONING_FAILED, ERROR_TOO_MANY_CONCURRENT_SESSIONS, ERROR_UNKNOWN, ERROR_WIDEVINE_DEV_CERTIFICATE_REVOKED`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DrmException(String message, int errorCode)`
  Create a new instance with the given message and error errorCode
  `DrmException(String message, int errorCode, String customMessage)`
  Create a new instance with the given message and error errorCode
  `DrmException(String message, int errorCode, Throwable cause)`
  Create a new instance with the given message and error errorCode

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static DrmException`
  `create(DrmUtils.HttpExecutorException httpException)`
  Creates a DrmException from a DrmUtils.HttpExecutorException.

  ### Methods inherited from class com.castlabs.android.drm.DrmTodayException

  `getCustomCode, getCustomMessage, getErrorCode, toString`

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

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

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

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

- ## Constructor Details

  - ### DrmException

    public DrmException(@NonNull String message, int errorCode)
    Create a new instance with the given message and error errorCode
    Parameters:
      `message` - the error message
      `errorCode` - the error errorCode

  - ### DrmException

    public DrmException(@NonNull String message, int errorCode, @Nullable String customMessage)
    Create a new instance with the given message and error errorCode
    Parameters:
      `message` - the error message
      `errorCode` - the error errorCode
      `customMessage` - the custom message

  - ### DrmException

    public DrmException(@NonNull String message, int errorCode, Throwable cause)
    Create a new instance with the given message and error errorCode
    Parameters:
      `message` - the error message
      `errorCode` - the error errorCode
      `cause` - the cause

- ## Method Details

  - ### create

    @NonNull public static DrmException create(@NonNull DrmUtils.HttpExecutorException httpException)
    Creates a DrmException from a DrmUtils.HttpExecutorException.
    Parameters:
      `httpException` - The HttpExecutorException to convert.
    Returns:
      A new DrmException.