Class IOExceptionList

All Implemented Interfaces:
Serializable, Iterable<Throwable>

public class IOExceptionList extends IOException implements Iterable<Throwable>
An IOException based on a list of Throwable causes.

The first exception in the list is used as this exception's cause and is accessible with the usual Throwable.getCause() while the complete list is accessible with getCauseList().

Since:
2.7
See Also:
  • Constructor Details Link icon

    • IOExceptionList Link icon

      public IOExceptionList(List<? extends Throwable> causeList)
      Constructs a new exception caused by a list of exceptions.
      Parameters:
      causeList - a list of cause exceptions.
    • IOExceptionList Link icon

      public IOExceptionList(String message, List<? extends Throwable> causeList)
      Constructs a new exception caused by a list of exceptions.
      Parameters:
      message - The detail message, see Throwable.getMessage().
      causeList - a list of cause exceptions.
      Since:
      2.9.0
  • Method Details Link icon

    • checkEmpty Link icon

      public static void checkEmpty(List<? extends Throwable> causeList, Object message) throws IOExceptionList
      Throws this exception if the list is not null or empty.
      Parameters:
      causeList - The list to test.
      message - The detail message, see Throwable.getMessage().
      Throws:
      IOExceptionList - if the list is not null or empty.
      Since:
      2.12.0
    • getCause Link icon

      public <T extends Throwable> T getCause(int index)
      Gets the cause exception at the given index.
      Type Parameters:
      T - type of exception to return.
      Parameters:
      index - index in the cause list.
      Returns:
      The list of causes.
    • getCause Link icon

      public <T extends Throwable> T getCause(int index, Class<T> clazz)
      Gets the cause exception at the given index.
      Type Parameters:
      T - type of exception to return.
      Parameters:
      index - index in the cause list.
      clazz - type of exception to return.
      Returns:
      The list of causes.
    • getCauseList Link icon

      public <T extends Throwable> List<T> getCauseList()
      Gets the cause list.
      Type Parameters:
      T - type of exception to return.
      Returns:
      The list of causes.
    • getCauseList Link icon

      public <T extends Throwable> List<T> getCauseList(Class<T> clazz)
      Works around Throwable and Generics, may fail at runtime depending on the argument value.
      Type Parameters:
      T - type of exception to return.
      Parameters:
      clazz - the target type
      Returns:
      The list of causes.
    • iterator Link icon

      Specified by:
      iterator in interface Iterable<Throwable>