Skip to content

Instantly share code, notes, and snippets.

@PatrickGopher
Created July 17, 2020 06:20
Show Gist options
  • Save PatrickGopher/052aafa96f60ed7ba5163d58f713affe to your computer and use it in GitHub Desktop.
Save PatrickGopher/052aafa96f60ed7ba5163d58f713affe to your computer and use it in GitHub Desktop.
@Override
public void getUserInfo(UserInfoRequest request, StreamObserver<UserInfo> response) {
final CompletableFuture<String> Result =
provider.getUserInfo(request.getUserId()); // some other grpc request invoke
final CompletableFuture<UserInfo> responseFuture =
trackResult.thenApply(result -> UserInfo.newBuilder().setUserInfo(result).build());
responseFuture.whenComplete(
(result, throwable) -> {
if (result != null) {
response.onNext(result);
response.onCompleted();
} else if (throwable != null) {
response.onError(throwable);
}
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment