@Override public VisitorFeedbackPage getFeedbackPage(String assetId, int itemsToFetch, long itemsToSkip) { ItemIterable<QueryResult> results = runQuery(MessageFormat.format(feedbackByAssetIdQueryPattern, assetId)); ItemIterable<QueryResult> page = results.skipTo(itemsToSkip).getPage(itemsToFetch); List<VisitorFeedback> foundFeedback = new ArrayList<VisitorFeedback>((int) page.getPageNumItems()); for (QueryResult queryResult : page) { foundFeedback.add(buildFeedbackObject(queryResult)); } VisitorFeedbackPage feedbackPage = new VisitorFeedbackPageImpl(foundFeedback, itemsToSkip, results.getTotalNumItems()); return feedbackPage; }
@Override public List<QueryResult> getPage(@NotNull CMISConnector connector) throws Exception { if (session != null && !lastPage) { OperationContext ctx = ChemistryCMISFacade.createOperationContext(filter, orderBy); ctx.setMaxItemsPerPage(pageSize); final ItemIterable<QueryResult> queryResults = session.query(query, allVersions, ctx); final ItemIterable<QueryResult> page = queryResults.skipTo(skipTo).getPage(); final List<QueryResult> results = Lists.newArrayList(page); if (!page.getHasMoreItems()) { lastPage = true; } skipTo += page.getPageNumItems(); return results; } lastPage = false; return Collections.emptyList(); }
List<SearchResult> foundAssets = new ArrayList<SearchResult>((int) page.getPageNumItems()); for (QueryResult queryResult : page)