то, что вы делаете, не странно, я лично не вернул бы логическое значение в реактивной функции Mono<Boolean>
, если бы я мог избежать этого, но это не так, и иногда у вас нет выбора.
Для ясности лично у меня было бы заявление if else на карте. И я бы изменил название функции и переписал isNot
часть.
Flux<Properties> properties = productService.isExcluded(productId)
.flatMap(isExcluded -> {
if(!isExcluded)
return propertiesService.getProductDetailProperties(product);
else
return mono.empty();
});
Это вопрос мнения и вкуса кодирования, но я считаю, что это гораздо более читабельно, потому что вы можете Прочитайте код и сразу поймите его. Но это личный вкус.