@Override public Pagination<DimensionRow> findAllDimensionRowsPaged(PaginationParameters paginationParameters) { return new AllPagesPagination<>(dimensionRows, paginationParameters); }
.map(pageParams -> new AllPagesPagination<>(preResponse.getResultSet(), pageParams)) .map(page -> new PreResponse( new ResultSet(preResponse.getResultSet().getSchema(), page.getPageOfData()), addPaginationInfoToResponseContext(responseContext, uriInfo, page) ))
/** * This method returns a Function that can basically take a Collection and return an instance of * AllPagesPagination. * * @param paginationParameters The PaginationParameters to be used to generate AllPagesPagination instance * @param <T> The type of items in the Collection which needs to be paginated * * @return A Function that takes a Collection and returns an instance of AllPagesPagination */ public <T> Function<Collection<T>, AllPagesPagination<T>> getAllPagesPaginationFactory( PaginationParameters paginationParameters ) { return data -> new AllPagesPagination<>(data, paginationParameters); }
@Override public Pagination<DimensionRow> findFilteredDimensionRowsPaged( Set<ApiFilter> filters, PaginationParameters paginationParameters ) { return new AllPagesPagination<>( filters.stream() .flatMap(f -> f.getValues().stream()) .map(this::makeDimensionRow) .collect(Collectors.toCollection(TreeSet::new)), paginationParameters ); } }
UriInfo uriInfo = containerRequestContext.getUriInfo(); Pagination<T> pagination = new AllPagesPagination<>( rows, apiRequest.getPaginationParameters().orElse(ApiRequestImpl.DEFAULT_PAGINATION)
/** * Cuts the result set down to just the page requested. * * @param resultSet The result set to be cut down. * * @return The page of results desired. */ @Override public ResultSet map(ResultSet resultSet) { Pagination<Result> pages = new AllPagesPagination<>(resultSet, paginationParameters); AbstractResponse.addLinks(pages, uriBuilder, responseProcessor); //uses map for additional flexibility and robustness, even though it is currently a no-op. return new ResultSet(map(resultSet.getSchema()), pages.getPageOfData()); }