-1
我是RxJava的新手,經常發現自己採用類似於下面的解決方案的解決方案來進行條件操作。在這裏,我想按順序鏈接兩個調用,然後根據調用鏈的結果返回一個int。是否有任何「rxified」的方式來改善此代碼? (這裏使用blockingSingle因爲我使所得INT到遺留應用到我不能推值作爲尚未)RxJava代碼中的有條件操作
return restApiAdapter.closePosition(request)
.flatMap(dealReference -> restApiAdapter.getDealConfirmationObservable(dealReference.getValue())
.map(dealConfirmationResponse -> {
if (dealConfirmationResponse.getDealStatus() == DealStatus.ACCEPTED) {
return SUCCESS.getValue();
} else {
return FAIL.getValue();
}
})
)
.onErrorReturn(e -> ZorroReturnValues.BROKER_SELL_FAIL.getValue())
.blockingSingle();
這裏有很多不相關的代碼,使得很難看到與您的問題相關的重要RxJava方面。你可以大大簡化這個嗎? –
哇,這是一個代碼的地獄:) - 檢查固體原則和清潔代碼準則。 – andreim
簡化的例子,現在更清楚了嗎? @ andrei-macarie那不是我所要求的 – Daniel