Example usage for org.springframework.data.domain Pageable getPageNumber

List of usage examples for org.springframework.data.domain Pageable getPageNumber

Introduction

In this page you can find the example usage for org.springframework.data.domain Pageable getPageNumber.

Prototype

int getPageNumber();

Source Link

Document

Returns the page to be returned.

Usage

From source file:com.luna.common.web.bind.method.annotation.PageableMethodArgumentResolverTest.java

@Test
public void testCustomNamePrefixPageableAndSort() throws Exception {
    int pn = 1;/*from  w  w  w.java2  s  .c o m*/
    int pageSize = 10;
    request.setParameter("foo_page.pn", String.valueOf(pn));
    request.setParameter("foo_page.size", String.valueOf(pageSize));
    request.setParameter("foo_sort2.id", "desc");
    request.setParameter("foo_sort1.baseInfo.realname", "asc");

    MethodParameter parameter = new MethodParameter(customNamePrefixPageableAndSort, 0);
    NativeWebRequest webRequest = new ServletWebRequest(request);
    Pageable pageable = (Pageable) new PageableMethodArgumentResolver().resolveArgument(parameter, null,
            webRequest, null);

    //-10
    assertEquals(pn - 1, pageable.getPageNumber());
    assertEquals(pageSize, pageable.getPageSize());
    Sort expectedSort = new Sort(Sort.Direction.ASC, "baseInfo.realname")
            .and(new Sort(Sort.Direction.DESC, "id"));
    assertEquals(expectedSort, pageable.getSort());
}

From source file:com.luna.common.web.bind.method.annotation.PageableMethodArgumentResolverTest.java

@Test
public void testPageableAndUnOrderedSort() throws Exception {

    int pn = 1;/*from   ww  w.  ja  v a 2  s.  co  m*/
    int pageSize = 10;
    request.setParameter("page.pn", String.valueOf(pn));
    request.setParameter("page.size", String.valueOf(pageSize));
    request.setParameter("sort.id", "desc");
    request.setParameter("sort.baseInfo.realname", "asc");

    MethodParameter parameter = new MethodParameter(pageableAndSort, 0);
    NativeWebRequest webRequest = new ServletWebRequest(request);
    Pageable pageable = (Pageable) new PageableMethodArgumentResolver().resolveArgument(parameter, null,
            webRequest, null);

    //-10
    assertEquals(pn - 1, pageable.getPageNumber());
    assertEquals(pageSize, pageable.getPageSize());
    Sort expectedSort = new Sort(Sort.Direction.ASC, "baseInfo.realname")
            .and(new Sort(Sort.Direction.DESC, "id"));
    assertEquals(expectedSort, pageable.getSort());
}

From source file:com.luna.common.web.bind.method.annotation.PageableMethodArgumentResolverTest.java

@Test
public void testPageableAndOrderedSort() throws Exception {

    int pn = 1;//from w  w  w.  j a  v  a2s.  co m
    int pageSize = 10;
    request.setParameter("page.pn", String.valueOf(pn));
    request.setParameter("page.size", String.valueOf(pageSize));
    request.setParameter("sort1.baseInfo.realname", "asc");
    request.setParameter("sort2.id", "desc");

    MethodParameter parameter = new MethodParameter(pageableAndSort, 0);
    NativeWebRequest webRequest = new ServletWebRequest(request);
    Pageable pageable = (Pageable) new PageableMethodArgumentResolver().resolveArgument(parameter, null,
            webRequest, null);

    //-10
    assertEquals(pn - 1, pageable.getPageNumber());
    assertEquals(pageSize, pageable.getPageSize());
    Sort expectedSort = new Sort(Sort.Direction.ASC, "baseInfo.realname")
            .and(new Sort(Sort.Direction.DESC, "id"));
    assertEquals(expectedSort, pageable.getSort());
}

From source file:de.rahn.finances.services.securities.SecuritiesServiceImpl.java

/**
 * {@inheritDoc}// w  w  w.  ja  va  2s  . com
 *
 * @see SecuritiesService#getSecurities(boolean, SecurityType, Pageable)
 */
@Override
public Page<Security> getSecurities(boolean inventory, SecurityType type, Pageable pageable) {
    Page<Security> page;
    if (type == null) {
        page = repository.findByInventory(pageable, inventory);
    } else {
        page = repository.findByInventoryAndType(pageable, inventory, type);
    }

    if (pageable != null) {
        if (page.getTotalPages() == 0 && pageable.getPageNumber() > 0
                || page.getTotalPages() != 0 && page.getTotalPages() <= pageable.getPageNumber()) {
            // Angeforderte Page ausserhalb des zulssigen Bereiches
            int maxPage = page.getTotalPages() == 0 ? 0 : page.getTotalPages() - 1;
            return getSecurities(inventory, type,
                    new PageRequest(maxPage, pageable.getPageSize(), pageable.getSort()));
        }
    }

    return page;
}

From source file:de.rahn.finances.server.web.ui.SecuritiesControllerTest.java

/**
 * Initialisiere die Testgren./*from   ww w  .  j a v a  2s . co  m*/
 */
@Before
public void setup() {
    when(securitiesService.getSecurities(anyBoolean(), any())).thenAnswer(invocation -> {
        List<Security> securitiesList = new ArrayList<>();

        Pageable pageable = invocation.getArgumentAt(1, Pageable.class);

        if (pageable == null || pageable.getPageNumber() == 0) {
            for (int i = 0; i < 10; i++) {
                Security security = new Security();
                security.setIsin(ISIN1 + i);
                security.setType(stock);
                security.setInventory(true);

                securitiesList.add(security);
            }
        }
        if (pageable == null || pageable.getPageNumber() == 1) {
            for (int i = 0; i < 10; i++) {
                Security security = new Security();
                security.setIsin(ISIN2 + i);
                security.setType(stock);
                security.setInventory(true);

                securitiesList.add(security);
            }
        }

        return new PageImpl<>(securitiesList);
    });

    when(securitiesService.getSecurity(ID_FOUND)).thenReturn(new Security() {
        {
            setId(ID_FOUND);
            setIsin(ISIN1 + "0");
            setType(stock);
            setInventory(true);
        }
    });

    when(securitiesService.getSecurity(ID_NOT_FOUND)).thenThrow(new SecurityNotFoundException(ID_NOT_FOUND));

    when(securitiesService.save(any(Security.class))).thenAnswer(invocation -> {
        String isin = invocation.getArgumentAt(0, Security.class).getIsin();

        if (ISIN_NOT_SAVE.equals(isin)) {
            throw new RuntimeException("could not execute statement");
        }

        return null;
    });
}

From source file:de.appsolve.padelcampus.db.dao.generic.BaseEntityDAO.java

private Criteria getPageableCriteria(Pageable pageable) {
    Criteria criteria = getCriteria();//  ww w.  j  av  a2 s .  c o  m
    addOrderBy(criteria, pageable);
    criteria.setFirstResult(pageable.getPageNumber() * pageable.getPageSize());
    criteria.setMaxResults(pageable.getPageSize());
    return criteria;
}

From source file:org.openlmis.fulfillment.repository.custom.impl.OrderRepositoryImpl.java

private Page<Order> search(OrderSearchParams params, Set<UUID> processingPeriodIds, Pageable pageable,
        Set<UUID> availableSupplyingFacilities, Set<UUID> availableRequestingFacilities) {
    CriteriaBuilder builder = entityManager.getCriteriaBuilder();

    CriteriaQuery<Order> query = builder.createQuery(Order.class);
    query = prepareQuery(query, params, processingPeriodIds, pageable, false, availableSupplyingFacilities,
            availableRequestingFacilities);
    CriteriaQuery<Long> countQuery = builder.createQuery(Long.class);
    countQuery = prepareQuery(countQuery, params, processingPeriodIds, pageable, true,
            availableSupplyingFacilities, availableRequestingFacilities);

    Pageable page = null != pageable ? pageable : new PageRequest(0, Integer.MAX_VALUE);

    Long count = entityManager.createQuery(countQuery).getSingleResult();
    List<Order> result = entityManager.createQuery(query).setMaxResults(page.getPageSize())
            .setFirstResult(page.getPageSize() * page.getPageNumber()).getResultList();

    return new PageImpl<>(result, page, count);
}

From source file:org.ngrinder.user.controller.UserController.java

/**
 * Get user list on the given role.//from w  w w. j a  v  a2  s .com
 *
 * @param model    model
 * @param role     role
 * @param pageable page info
 * @param keywords search keyword.
 * @return user/userList
 */
@PreAuthorize("hasAnyRole('A')")
@RequestMapping({ "", "/" })
public String getAll(ModelMap model, @RequestParam(required = false) Role role,
        @PageableDefaults Pageable pageable, @RequestParam(required = false) String keywords) {

    pageable = new PageRequest(pageable.getPageNumber(), pageable.getPageSize(),
            defaultIfNull(pageable.getSort(), new Sort(Direction.ASC, "userName")));
    Page<User> pagedUser;
    if (StringUtils.isEmpty(keywords)) {
        pagedUser = userService.getPagedAll(role, pageable);
    } else {
        pagedUser = userService.getPagedAll(keywords, pageable);
        model.put("keywords", keywords);
    }
    model.addAttribute("users", pagedUser);
    EnumSet<Role> roleSet = EnumSet.allOf(Role.class);
    model.addAttribute("roleSet", roleSet);
    model.addAttribute("role", role);
    putPageIntoModelMap(model, pageable);
    return "user/list";
}

From source file:org.ngrinder.user.controller.UserController.java

/**
 * Search user list on the given keyword.
 *
 * @param pageable page info/*from   w w  w.j  a  v  a 2s .  co  m*/
 * @param keywords search keyword.
 * @return json message
 */
@RestAPI
@RequestMapping(value = "/api/search", method = RequestMethod.GET)
public HttpEntity<String> search(User user, @PageableDefaults Pageable pageable,
        @RequestParam(required = true) String keywords) {
    pageable = new PageRequest(pageable.getPageNumber(), pageable.getPageSize(),
            defaultIfNull(pageable.getSort(), new Sort(Direction.ASC, "userName")));
    Page<User> pagedUser = userService.getPagedAll(keywords, pageable);
    List<UserSearchResult> result = newArrayList();
    for (User each : pagedUser) {
        result.add(new UserSearchResult(each));
    }

    final String currentUserId = user.getUserId();
    CollectionUtils.filter(result, new Predicate() {
        @Override
        public boolean evaluate(Object object) {
            UserSearchResult each = (UserSearchResult) object;
            return !(each.getId().equals(currentUserId)
                    || each.getId().equals(ControllerConstants.NGRINDER_INITIAL_ADMIN_USERID));
        }
    });

    return toJsonHttpEntity(result);
}

From source file:com.linkcm.core.dao.BaseJdbcDao.java

/**
 * sql//w w w  . j a  v  a2 s . co m
 * 
 * */
public Page<Map<String, Object>> findPageBySql(Pageable pageable, String sql, final Object... values) {
    String countSql = jdbcDialect.getPaginationCountSql(sql);
    long size = getJdbcTemplate().queryForLong(countSql, values);

    String sortSql = getSortSql(pageable.getSort(), sql);

    String querySql = jdbcDialect.getPaginationQuerySql(sortSql,
            pageable.getPageNumber() * pageable.getPageSize(), pageable.getPageSize());

    List<Map<String, Object>> result = getJdbcTemplate().queryForList(querySql, values);
    return new PageImpl<Map<String, Object>>(result, pageable, size);
}