我正在使用Apollo的自动生成查询在Java应用程序中实现GraphQL客户端,到目前为止,我已经能够链接调用,并且我还获得了我想要的数据。问题是Apollo让我实现了覆盖和的匿名方法,但我无法找到一种方法来获取此对象,我想收集并确保我有。ApolloCall.Callback<>()void onResponse(Response response)void onFailure()Response
这是Java 11上的一个Spring Boot项目,我试图利用它,但对它的了解有限,以及如何使用它来解决这个特定的问题,我觉得运气不好。我还尝试实现Apollo应该具有的RxJava支持,但我无法通过这种方法解决依赖问题。CompletableFuture
我很确定期货会解决这个问题,但我再次不知道如何解决。
public void getOwnerIdFromClient() {
client
.query(getOwnerDbIdQuery)
.enqueue(
new ApolloCall.Callback<>() {
@Override
public void onResponse(@Nonnull Response<Optional<GetOwnerDbIdQuery.Data>> response) {
int ownerId =
response
.data()
.get()
.entities()
.get()
.edges()
.get()
.get(0)
.node()
.get()
.ownerDbId()
.get();
System.out.println("OwnerId = " + ownerId);
}
@Override
public void onFailure(@Nonnull ApolloException e) {
logger.error("Could not retrieve response from GetOwnerDbIdQuery.", e);
}
});
}
由于我希望在外部与此合作,因此这不是一个足够的解决方案。我实际上想进行此调用x次,并创建一个我实际获得的所有id的列表,因为这也可能返回一个空id,这意味着我需要一些方法来等待它们全部完成。int ownerIdonResponse
慕少森
翻过高山走不出你
相关分类