in oss-20190517/src/main/java/com/aliyun/sdk/service/oss20190517/paginator/async/ResponseSubscription.java [52:80]
private void handleRequests() {
if (!hasNextPage()) {
completeSubscription();
return;
}
synchronized (this) {
if (requestN.get() <= 0) {
stopTask();
return;
}
}
if (!isTerminated()) {
requestN.getAndDecrement();
nextPageFetcher.nextPage(currentPage)
.whenComplete(((response, error) -> {
if (response != null) {
currentPage = response;
subscriber.onNext(response);
handleRequests();
}
if (error != null) {
subscriber.onError(error);
cleanup();
}
}));
}
}