Je dois obtenir les commentaires avec vos réponses pour tous les nœuds appartenant à des utilisateurs authentifiés.Comment obtenir le nombre de réponses d'un commentaire avec RestFB
Je l'ai de la manière suivante avec flux java 8:
private Stream<Comment> getCommentsByObjectAfterThan(final FacebookClient facebookClient, final String objectId, final Date startDate, User user) {
Connection<Comment> commentConnection
= facebookClient.fetchConnection(objectId + "/comments", Comment.class);
return StreamUtils.asStream(commentConnection.iterator())
.flatMap(List::stream)
.flatMap(comment
-> StreamUtils.concat(
getCommentsByObjectAfterThan(facebookClient, comment.getId(), startDate, user), comment)
)
.filter(comment -> !comment.getFrom().getId().equals(user.getId()) &&
(startDate != null ? comment.getCreatedTime().after(startDate) : true));
}
J'ai besoin d'optimiser la seconde flapMap qui crée un flux avec le haut niveau commentaires et ses réponses.
Il est clair qu'il faudrait faire:
.flatMap(comment -> comment.getCommentCount() > 0 ? StreamUtils.concat(
getCommentsByObjectAfterThan(facebookClient,comment.getId(), startDate, user), comment) : Stream.of(comment))
Le problème est qu'il comment.getCommentCount()
retourne toujours 0 même si les commentaires ont des réponses.
Comment puis-je résoudre ce problème? Merci d'avance.
Merci! Ça a marché –