Example usage for org.springframework.data.domain Page getTotalPages

List of usage examples for org.springframework.data.domain Page getTotalPages

Introduction

In this page you can find the example usage for org.springframework.data.domain Page getTotalPages.

Prototype

int getTotalPages();

Source Link

Document

Returns the number of total pages.

Usage

From source file:ei.ne.ke.cassandra.cql3.AstyanaxCql3PagingAndSortingTest.java

@Test
@Ignore/*from ww  w  . j a  va2 s.c  o  m*/
public void everyPage() {
    int pageSize = 25;
    int totalPages = N / 25;
    Stopwatch sw = new Stopwatch();
    for (int pageNumber = 0; pageNumber < N / pageSize; pageNumber++) {
        sw.start();
        Page<PagingAndSortingEntity> page = repository.findAll(new PagingAndSortingEntity.CompoundKey("foo"),
                new PageableImpl(pageNumber, 25, 0, null));
        Assert.assertEquals(pageNumber, page.getNumber());
        Assert.assertEquals(pageSize, page.getSize());
        Assert.assertEquals(totalPages, page.getTotalPages());
        LOGGER.info("Fetched page {} in {}ms...", pageNumber, sw.elapsed(TimeUnit.MILLISECONDS));
        sw.reset();
    }
}

From source file:com.epam.ta.reportportal.ws.converter.ProjectRelatedResourceAssembler.java

/**
 * Creates {@link com.epam.ta.reportportal.ws.model.Page} from {@link Page} DB query result
 *
 * @param content//from   ww w .  j av a  2 s .  c o m
 * @return
 */
public com.epam.ta.reportportal.ws.model.Page<R> toPagedResources(Page<T> content, final String project) {
    Assert.notNull(content);

    return new com.epam.ta.reportportal.ws.model.Page<R>(
            content.getContent().stream().map(c -> toResource(c, project)).collect(Collectors.toList()),
            new com.epam.ta.reportportal.ws.model.Page.PageMetadata(content.getSize(), content.getNumber() + 1,
                    content.getTotalElements(), content.getTotalPages()));
}

From source file:com.yqboots.web.thymeleaf.processor.element.PaginationElementProcessor.java

/**
 * Gets the link node of the next page./*from   w ww.  j a  v  a2  s . com*/
 *
 * @param page        the pagination object
 * @param contextPath current context path of servlet
 * @return the node
 */
private Element getNextElement(final Page<?> page, final String contextPath) {
    final Element result = new Element("li");

    String url;
    if (!page.hasNext()) {
        int pageNumber = page.getTotalPages() - 1;
        url = getPagedParams(contextPath, pageNumber < 0 ? 0 : pageNumber, page.getSize());
    } else {
        url = getPagedParams(contextPath, page.getNumber() + 1, page.getSize());
    }

    final Element a = new Element("a");
    a.setAttribute("href", url);
    result.addChild(a);

    final Element icon = new Element("i");
    icon.setAttribute("class", "glyphicon glyphicon-triangle-right");

    a.addChild(icon);

    if (!page.hasNext()) {
        result.setAttribute("class", "disabled");
    }

    return result;
}

From source file:com.yqboots.web.thymeleaf.processor.element.PaginationElementProcessor.java

/**
 * Gets the link node of the last page.//from w w w .  j a  va  2 s .  c  om
 *
 * @param page        the pagination object
 * @param contextPath current context path of servlet
 * @return the node
 */
private Element getLastElement(final Page<?> page, final String contextPath) {
    final Element result = new Element("li");

    final Element a = new Element("a");
    a.setAttribute("href", getPagedParams(contextPath, page.getTotalPages() - 1, page.getSize()));
    result.addChild(a);

    final Element icon = new Element("i");
    icon.setAttribute("class", "glyphicon glyphicon-step-forward");

    a.addChild(icon);

    if (page.isLast()) {
        result.setAttribute("class", "disabled");
    }

    return result;
}

From source file:es.fdi.reservas.reserva.web.FacultadController.java

@RequestMapping(value = "/admin/administrar/facultad/restaurar/page/{numPag}", method = RequestMethod.GET)
public String restaurarFacultades(@PathVariable("numPag") Integer numPag, Model model) {

    User u = facultad_service.getCurrentUser();

    PageRequest pageRequest = new PageRequest(numPag - 1, 5);
    Page<Facultad> currentResults = facultad_service.getFacultadesEliminadasPaginadas(pageRequest);

    int current = currentResults.getNumber() + 1;
    int begin = Math.max(1, current - 5);
    int end = Math.min(begin + 10, currentResults.getTotalPages());

    model.addAttribute("currentResults", currentResults);
    model.addAttribute("User", u);
    model.addAttribute("beginIndex", begin);
    model.addAttribute("endIndex", end);
    model.addAttribute("currentIndex", current);
    model.addAttribute("reservasPendientes",
            facultad_service.reservasPendientesUsuario(u.getId(), EstadoReserva.PENDIENTE).size());
    model.addAttribute("pagina", numPag);
    model.addAttribute("view", "admin/papelera_facultades");

    return "index";
}

From source file:io.github.azige.bbs.web.controller.TopicController.java

@RequestMapping(value = "/topic", method = RequestMethod.GET)
public String topicListView(@PageableDefault(sort = "id", direction = Direction.DESC) Pageable pagable,
        Model model) {//from ww w. j  a v a2s.c om
    Page<Topic> page = topicRepository.findAll(pagable);
    List<Topic> topics = page.getContent();
    model.addAttribute("topics", topics);
    int firstPageNumber = page.getNumber() - 3;
    int lastPageNumber = page.getNumber() + 3;
    if (firstPageNumber < 0) {
        firstPageNumber = 0;
        lastPageNumber = Math.min(firstPageNumber + 7, page.getTotalPages() - 1);
    } else if (lastPageNumber >= page.getTotalPages()) {
        lastPageNumber = page.getTotalPages() - 1;
        firstPageNumber = Math.max(lastPageNumber - 7, 0);
    }
    model.addAttribute("pageNumbers", IntStream.rangeClosed(firstPageNumber, lastPageNumber).toArray());
    model.addAttribute("page", page);
    return "topic-list";
}

From source file:net.turnbig.jdbcx.test.JdbcxPagingTest.java

@Test
public void testQueryPagedListBean() {
    PageRequest pr = new PageRequest(0, 10);
    Page<Member> members = jdbc.queryForListBean("select * from member where name like 'batched%'",
            Member.class, pr);
    Assert.assertEquals("name like batch get 10 record", members.getSize(), 10);
    Assert.assertEquals("name like batch get 10 record", members.getTotalElements(), 200);
    Assert.assertEquals("name like batch get 10 record", members.getTotalPages(), 20);

    PageRequest pr2 = new PageRequest(1, 20, new Sort(new Order(Direction.ASC, "id")));
    Page<Map<String, Object>> members2 = jdbc.queryForListMap("select * from member where name like 'batched%'",
            pr2);//  ww  w .  j av  a  2s. c o  m
    Assert.assertEquals("name like batch get 20 record", members2.getSize(), 20);
    Assert.assertEquals("name like batch get 200 total", members2.getTotalElements(), 200);
    Assert.assertEquals("name like batch get 10 pages", members2.getTotalPages(), 10);
    logger.info("{}", members2.getContent());

    Map<String, String> params = new HashMap<String, String>();
    params.put("name", "batched%");
    members2 = jdbc.queryForListMap("select * from member where name like :name", params, pr2);
    Assert.assertEquals("name like batch get 20 record", members2.getSize(), 20);
    Assert.assertEquals("name like batch get 200 total", members2.getTotalElements(), 200);
    Assert.assertEquals("name like batch get 10 pages", members2.getTotalPages(), 10);
    logger.info("{}", members2.getContent());

    //      Map<String, String> params = new HashMap<String, String>();
    //      params.put("name", "woo");
    //      List<Member> members2 = jdbc.queryForListBean("select * from member where name = :name", params, Member.class);
    //      Assert.assertEquals("name with woo only 1 record", members2.size(), 1);
    //
    //      Member member = members.get(0);
    //      Assert.assertEquals("ip should be 127.0.0.1", member.getRegistIp(), "127.0.0.1");
}

From source file:org.openlmis.fulfillment.repository.ShipmentRepositoryIntegrationTest.java

@Test
public void shouldFindShipmentPageByOrder() {
    Shipment save = shipmentRepository.save(generateInstance());

    Page<Shipment> page = shipmentRepository.findByOrder(order, createPageable(10, 0));

    assertEquals(1, page.getContent().size());
    assertEquals(save.getId(), page.getContent().get(0).getId());

    assertEquals(10, page.getSize());/*from  w  ww .  ja  va  2 s  .  c  o m*/
    assertEquals(0, page.getNumber());
    assertEquals(1, page.getNumberOfElements());
    assertEquals(1, page.getTotalElements());
    assertEquals(1, page.getTotalPages());
}

From source file:es.fdi.reservas.reserva.web.ReservaController.java

@RequestMapping(value = "/mis-reservas/page/{pageNumber}", method = RequestMethod.GET)
public String misReservasPaginadas(@PathVariable Integer pageNumber, Model model) {
    User u = reserva_service.getCurrentUser();

    PageRequest pageRequest = new PageRequest(pageNumber - 1, 7,
            new Sort(new Sort.Order(Sort.Direction.ASC, "comienzo")));
    Page<Reserva> currentResults = reserva_service.getReservasUsuario(u.getId(), pageRequest);

    model.addAttribute("currentResults", currentResults);

    int current = currentResults.getNumber() + 1;
    int begin = Math.max(1, current - 5);
    int end = Math.min(begin + 10, currentResults.getTotalPages());

    model.addAttribute("beginIndex", begin);
    model.addAttribute("endIndex", end);
    model.addAttribute("currentIndex", current);
    model.addAttribute("reservasPendientes",
            reserva_service.reservasPendientesUsuario(u.getId(), EstadoReserva.PENDIENTE).size());
    model.addAttribute("User", u);
    model.addAttribute("GruposReservas", reserva_service.getGruposUsuario(u.getId()));
    model.addAttribute("view", "mis-reservas");

    return "index";
}

From source file:com.yqboots.web.thymeleaf.processor.element.PaginationElementProcessor.java

/**
 * Adds elements for steps.//from  w ww.j a  v  a 2  s . c o  m
 *
 * @param page        the pagination object
 * @param contextPath current context path of servlet
 * @param container   the container node of the element
 */
private void addStepElements(final Page<?> page, final String contextPath, final Element container) {
    for (int step = 0; step < DEFAULT_STEPS; step++) {
        // beyond total pages is not allowed
        if (page.getTotalPages() < step + 1) {
            continue;
        }

        String url;
        int stepValue;
        if ((page.getNumber() + DEFAULT_STEPS) <= page.getTotalPages()) {
            // calculate by page number
            url = getPagedParams(contextPath, page.getNumber() + step, page.getSize());
            stepValue = page.getNumber() + step + 1;
        } else if (page.getTotalPages() < DEFAULT_STEPS && page.getTotalPages() >= step + 1) {
            // between step and DEFAULT_STEPS
            url = getPagedParams(contextPath, step, page.getSize());
            stepValue = step + 1;
        } else {
            // calculate by totalPages
            url = getPagedParams(contextPath, page.getTotalPages() - DEFAULT_STEPS + step, page.getSize());
            stepValue = page.getTotalPages() - DEFAULT_STEPS + step + 1;
        }

        final Element a = new Element("a");
        a.setAttribute("href", url);
        a.addChild(new Text(Integer.toString(stepValue)));

        final Element li = new Element("li");
        li.addChild(a);
        // set active
        if (page.getNumber() + 1 == stepValue) {
            li.setAttribute("class", "active");
        }

        container.addChild(li);
    }
}