Throw statement in Reactive operator
Reports throw
expressions in the Reactor/RxJava operator code.
Throwing exceptions from a Reactor/RxJava operator indicates a possible problem, because you can return a "Reactive-like" error: Mono.error()
or Flowable.error()
from flatMap()
, or call sink.error()
from the Reactor's handle()
operator.
Also, Reactor factory methods allow returning checked exceptions without any errors, while throwing such exceptions without the Exceptions
class leads to a compilation error.
Example:
Flux.just(1, 2, 3).flatMap(i -> {
throw new RuntimeException();
})
After the quick-fix is applied:
Flux.just(1, 2, 3).flatMap(i -> {
return Flux.error(new RuntimeException());
})
New in 2019.3
Inspection Details | |
---|---|
Available in: | IntelliJ IDEA 2023.3, Qodana for JVM 2023.3 |
Plugin: | Reactive Streams, 233.SNAPSHOT |
Last modified: 13 July 2023