Как конвертировать Spring Async в RxJava - PullRequest
1 голос
/ 03 мая 2019

Могу ли я изменить этот код на стиль кодирования RxJava?Текущая реализация как ниже.Я хочу изменить код, чтобы получить данные из асинхронного вызова и использовать его для чего-то другого в файле UpdatePublisherImpl.java.в основном, независимо от того, какой результат получит TokenUpdateService.updateBIToken (), хочет использовать для дальнейшей обработки.
Есть ли возможность изменить этот код на стиль кодирования RxJava и вернуть ABCResponse другому методу для дальнейшей обработки?

@Component
public class TokenUpdateService {

    @Autowired
    ABCSerivceConnector connector;

    @Async
    public void updateBIToken(List<TokenUpdateRecord> updateRecords) {
        ABCResponse response = connector.updateToken(updateRecords);
        int skippted = response.getSkipped().size();
        int success = response.getSuccess().size();
        int failed = response.getError().size();
    }
}

@Component
public class UpdatePublisherImpl implements UpdatePublisher {

@Autowired
private TokenUpdateService tokenUpdateService;

public void updateNAN(AccountUpdateRecord updateRecord, String batchId) {
        //updateRecords = list of records
        //below line makes Async call.
        tokenUpdateService.updateBIToken(updateRecords);
    }
}
...