I am new to Spring webflux. Need to understand why Mono.switchIfEmpty operator is getting called even if data is not empty.
Sample Code:
public static void main(String[] args) {
Mono.just("test1")
.flatMap(val -> {
System.out.println("test2");
return Mono.just("test2");
})
.switchIfEmpty(method1())
.subscribe(s -> System.out.println(s));
}
private static Mono<String> method1() {
System.out.println("test3");
return Mono.empty();
}
Output
test3 test2 test2