getUserDetails Method returns Mono of Type JsonNode. But I Actually want to return a Mono<User.java> or Flux<User.java>. please help modifying getBulkUserInfo or getUserDetails to get the Mono<User.java> or Flux<User.java>
public Mono<JsonNode> getUser(BigInteger Id){
return this.client.get()
.uri("/URL/{Id}",Id)
.retrieve()
.bodyToMono(JsonNode.class);
}
public Flux getBulkUsers(List<BigInteger> Ids){
return Flux.fromIterable(Ids).flatMap(this::getUser);
}
But The json response from the Url is something like
{
"resultholder": {
"totalResults": "1",
"profiles": {
"profileholder": {
"user": {
"country": "IND",
"zipCode": "560048",
"name":"Test"
}
}
}
}
}
I tried different ways but nothing worked subscribe() and .doOnNext(resp -> resp.get("resultholder").get("profiles").get("profileholder").get("user"))
.bodyToMono(JsonNode.class)
.doOnNext(resp ->{return
JSONUtils.deserialize(resp.get("resultholder").get("profiles").get("profileholder").get("user"), User.class)})