public final class

Exceptions

extends Object
java.lang.Object
   ↳ io.reactivex.exceptions.Exceptions

Class Overview

Utility class to help propagate checked exceptions and rethrow exceptions designated as fatal.

Summary

Public Methods
static RuntimeException propagate(Throwable t)
Convenience method to throw a RuntimeException and Error directly or wrap any other exception type into a RuntimeException.
static void throwIfFatal(Throwable t)
Throws a particular Throwable only if it belongs to a set of "fatal" error varieties.
[Expand]
Inherited Methods
From class java.lang.Object

Public Methods

public static RuntimeException propagate (Throwable t)

Convenience method to throw a RuntimeException and Error directly or wrap any other exception type into a RuntimeException.

Parameters
t the exception to throw directly or wrapped
Returns
  • because propagate itself throws an exception or error, this is a sort of phantom return value; propagate does not actually return anything

public static void throwIfFatal (Throwable t)

Throws a particular Throwable only if it belongs to a set of "fatal" error varieties. These varieties are as follows:

  • VirtualMachineError
  • ThreadDeath
  • LinkageError
This can be useful if you are writing an operator that calls user-supplied code, and you want to notify subscribers of errors encountered in that code by calling their onError methods, but only if the errors are not so catastrophic that such a call would be futile, in which case you simply want to rethrow the error.

Parameters
t the Throwable to test and perhaps throw