+ * Returns whether the reply with the given ID is new.
+ *
+ * @param replyId
+ * The ID of the reply to check
+ * @return {@code true} if the reply is considered to be new, {@code false}
+ * otherwise
+ */
+ public boolean isNewReply(String replyId) {
+ synchronized (newReplies) {
+ boolean isNew = !knownReplies.contains(replyId) && newReplies.remove(replyId);
+ knownReplies.add(replyId);
+ if (isNew) {
+ coreListenerManager.fireMarkReplyKnown(getReply(replyId));
+ }
+ return isNew;
+ }
+ }
+
+ /**