@JsonIgnore @Override public Pageable previousPageable() { return delegate.previousPageable(); }
/** * {@inheritDoc} */ @Override public String getPrevious(String baseUrl) { return baseUrl + String.valueOf(this.page.previousPageable().getPageNumber()) + this.sort; }
@Override public Page<D> convert(Page<S> source) { return new PageImpl<D>(convert(source.getContent()), source.previousPageable(), source.getTotalElements()); }
private <R> PagedResources<R> addPaginationLinks(PagedResources<R> resources, Page<?> page, Optional<Link> link) { UriTemplate base = getUriTemplate(link); boolean isNavigable = page.hasPrevious() || page.hasNext(); if (isNavigable || forceFirstAndLastRels) { resources.add(createLink(base, PageRequest.of(0, page.getSize(), page.getSort()), Link.REL_FIRST)); } if (page.hasPrevious()) { resources.add(createLink(base, page.previousPageable(), Link.REL_PREVIOUS)); } Link selfLink = link.map(it -> it.withSelfRel())// .orElseGet(() -> createLink(base, page.getPageable(), Link.REL_SELF)); resources.add(selfLink); if (page.hasNext()) { resources.add(createLink(base, page.nextPageable(), Link.REL_NEXT)); } if (isNavigable || forceFirstAndLastRels) { int lastIndex = page.getTotalPages() == 0 ? 0 : page.getTotalPages() - 1; resources.add(createLink(base, PageRequest.of(lastIndex, page.getSize(), page.getSort()), Link.REL_LAST)); } return resources; }
public static <T> PageDTO<T> build(Page<T> p) { if (p == null){ return null; } else { PageDTO<T> page = new PageDTO<>(); page.setContent(p.getContent()); page.setHasContent(p.hasContent()); page.setNumber(p.getNumber()); page.setNumberOfElements(p.getNumberOfElements()); page.setSize(p.getSize()); page.setTotalElements(p.getTotalElements()); page.setTotalPages(p.getTotalPages()); page.setHasNextPage(p.hasNext()); page.setHasPreviousPage(p.hasPrevious()); page.setFirst(p.isFirst()); page.setLast(p.isLast()); if (p.previousPageable() != null) { page.setPreviousPage(p.previousPageable().getPageNumber()); } if (p.nextPageable() != null) { page.setNextPage(p.nextPageable().getPageNumber()); } return page; } }