List of usage examples for com.liferay.portal.kernel.comment DiscussionComment getThreadDiscussionCommentIterator
public DiscussionCommentIterator getThreadDiscussionCommentIterator(int from);
From source file:com.liferay.comment.internal.jsonws.CommentManagerJSONWS.java
License:Open Source License
protected List<CommentJSONWS> getComments(DiscussionComment discussionComment, int start, int end) { if (start == QueryUtil.ALL_POS) { start = 0;/*from w w w. jav a2 s.co m*/ } DiscussionCommentIterator threadDiscussionCommentIterator = discussionComment .getThreadDiscussionCommentIterator(start); if (end == QueryUtil.ALL_POS) { return getAllComments(threadDiscussionCommentIterator); } int commentsCount = end - start; if (commentsCount <= 0) { return Collections.emptyList(); } List<CommentJSONWS> commentJSONWSs = new ArrayList<>(commentsCount); while (threadDiscussionCommentIterator.hasNext() && (commentsCount > 0)) { CommentJSONWS commentJSONWS = new CommentJSONWS(threadDiscussionCommentIterator.next()); commentJSONWSs.add(commentJSONWS); commentsCount--; } return commentJSONWSs; }
From source file:com.liferay.screens.service.impl.ScreensCommentServiceImpl.java
License:Open Source License
@Override public JSONArray getComments(String className, long classPK, int start, int end) throws PortalException { DiscussionPermission discussionPermission = commentManager.getDiscussionPermission(getPermissionChecker()); AssetEntry assetEntry = assetEntryLocalService.getEntry(className, classPK); Group group = groupLocalService.getGroup(assetEntry.getGroupId()); discussionPermission.checkViewPermission(group.getCompanyId(), assetEntry.getGroupId(), className, classPK); Discussion discussion = commentManager.getDiscussion(getUserId(), assetEntry.getGroupId(), className, classPK, createServiceContextFunction()); DiscussionComment rootDiscussionComment = discussion.getRootDiscussionComment(); if (start == QueryUtil.ALL_POS) { start = 0;//from w w w . ja va 2s.c o m } DiscussionCommentIterator threadDiscussionCommentIterator = rootDiscussionComment .getThreadDiscussionCommentIterator(start); JSONArray jsonArray = JSONFactoryUtil.createJSONArray(); if (end == QueryUtil.ALL_POS) { while (threadDiscussionCommentIterator.hasNext()) { JSONObject jsonObject = toJSONObject(threadDiscussionCommentIterator.next(), discussionPermission); jsonArray.put(jsonObject); } } else { int commentsCount = end - start; while (threadDiscussionCommentIterator.hasNext() && (commentsCount > 0)) { JSONObject jsonObject = toJSONObject(threadDiscussionCommentIterator.next(), discussionPermission); jsonArray.put(jsonObject); commentsCount--; } } return jsonArray; }