List of usage examples for org.springframework.data.domain Pageable getSort
Sort getSort();
From source file:net.turnbig.jdbcx.dialect.impl.OracleDialect.java
@Override public String getPageableSql(String sql, Pageable pageable) { String sortedSql = SelectSqlUtils.addSort(sql, pageable.getSort()); int startRow = pageable.getOffset(); int endRow = pageable.getOffset() + pageable.getPageSize(); String pagedSql = "select * from ( select tmp_page.*, rownum row_id from ({0}) tmp_page " + " where rownum <= {1} ) where row_id > {2}"; return MessageFormat.format(pagedSql, sortedSql, endRow, startRow); }
From source file:cn.edu.zjnu.acm.judge.user.UserListController.java
@GetMapping({ "/userlist", "/users" }) @SuppressWarnings("AssignmentToMethodParameter") public String userlist(HttpServletRequest request, @PageableDefault(50) Pageable pageable) { Sort sort = pageable.getSort(); int pageSize = Math.min(pageable.getPageSize(), 500); if (sort == null || !sort.iterator().hasNext()) { sort = DEFAULT_SORT;//from ww w. j a v a 2 s . co m } pageable = new PageRequest(pageable.getPageNumber(), pageSize, sort); String query; try { query = URLBuilder.fromRequest(request).replaceQueryParam("page").toString(); } catch (IllegalStateException | IllegalArgumentException ex) { throw new BadRequestException(); } long totalUsers = userMapper.countByDisabledFalse(); List<User> users = userMapper.findAll(pageable); PageImpl<User> page = new PageImpl<>(users, pageable, totalUsers); request.setAttribute("url", query); request.setAttribute("page", page); return "users/list"; }
From source file:at.plechinger.minigeocode.controller.GeocodeController.java
@RequestMapping("/all") public List<GeocodeResult> getGeocoding(@RequestParam(value = "q", required = true) String query, @PageableDefault(sort = { "street", "housenumber" }) Pageable pageable) { return geocodeRepository.findAll(query, pageable.getSort()); }
From source file:org.socialsignin.spring.data.dynamodb.repository.support.SimpleDynamoDBPagingAndSortingRepository.java
@Override public Page<T> findAll(Pageable pageable) { if (pageable.getSort() != null) { throw new UnsupportedOperationException("Sorting not supported for find all scan operations"); }/* www . ja v a 2 s .c o m*/ DynamoDBScanExpression scanExpression = new DynamoDBScanExpression(); // Scan to the end of the page after the requested page int scanTo = pageable.getOffset() + (2 * pageable.getPageSize()); scanExpression.setLimit(scanTo); PaginatedScanList<T> paginatedScanList = dynamoDBOperations.scan(domainType, scanExpression); Iterator<T> iterator = paginatedScanList.iterator(); int processedCount = 0; if (pageable.getOffset() > 0) { processedCount = scanThroughResults(iterator, pageable.getOffset()); if (processedCount < pageable.getOffset()) return new PageImpl<T>(new ArrayList<T>()); } // Scan ahead to retrieve the next page count List<T> results = readPageOfResults(iterator, pageable.getPageSize()); assertScanEnabled(enableScanPermissions.isFindAllPaginatedScanEnabled(), "findAll(Pageable pageable)"); assertScanCountEnabled(enableScanPermissions.isFindAllUnpaginatedScanCountEnabled(), "findAll(Pageable pageable)"); int totalCount = dynamoDBOperations.count(domainType, scanExpression); return new PageImpl<T>(results, pageable, totalCount); }
From source file:cz.jirutka.spring.data.jdbc.sql.DefaultSqlGenerator.java
public String selectAll(TableDescription table, Pageable page) { Sort sort = page.getSort() != null ? page.getSort() : sortById(table); return format( "SELECT t2__.* FROM ( " + "SELECT row_number() OVER (ORDER BY %s) AS rn__, t1__.* FROM ( %s ) t1__ " + ") t2__ WHERE t2__.rn__ BETWEEN %s AND %s", orderByExpression(sort), selectAll(table), page.getOffset() + 1, page.getOffset() + page.getPageSize()); }
From source file:at.plechinger.minigeocode.repository.GeocodeRepository.java
private String pageableString(Pageable pageable) { StringBuilder p = new StringBuilder(); if (pageable.getSort() != null) { p.append(sortString(pageable.getSort())); }/*from w w w. j a v a 2s . co m*/ p.append(" LIMIT ").append(pageable.getPageSize()).append(" OFFSET ").append(pageable.getOffset()); return p.toString(); }
From source file:at.plechinger.minigeocode.controller.ReverseGeocodeController.java
@RequestMapping(value = "/all") public List<ReverseGeocodeResult> getGeocoding(@RequestParam(value = "lat", required = true) double latitude, @RequestParam(value = "lon", required = true) double longitude, @PageableDefault(sort = { "distance", "street", "housenumber" }) Pageable pageable) { return geocodeRepository.findReverseAll(longitude, latitude, pageable.getSort()); }
From source file:com.epam.ta.reportportal.ws.resolver.PagingHandlerMethodArgumentResolver.java
@Override public Pageable resolveArgument(MethodParameter methodParameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) { Pageable pageable = super.resolveArgument(methodParameter, mavContainer, webRequest, binderFactory); if (0 == pageable.getPageSize()) { return new PageRequest(pageable.getPageNumber(), DEFAULT_PAGE_SIZE, pageable.getSort()); } else if (MAX_PAGE_SIZE < pageable.getPageSize()) { return new PageRequest(pageable.getPageNumber(), MAX_PAGE_SIZE, pageable.getSort()); }/* w w w .j a v a 2 s. co m*/ return pageable; }
From source file:com.trenako.web.controllers.admin.AdminScalesControllerMappingTests.java
@Test public void shouldProcessPagingParametersForScales() throws Exception { ArgumentCaptor<Pageable> arg = ArgumentCaptor.forClass(Pageable.class); mockMvc().perform(get("/admin/scales").param("page.page", "2").param("page.size", "25") .param("page.sort", "name").param("page.sort.dir", "desc")).andExpect(status().isOk()); verify(mockService, times(1)).findAll(arg.capture()); Pageable p = arg.getValue(); assertEquals(1, p.getPageNumber());//w ww . j a va 2s .c om assertEquals(25, p.getPageSize()); assertNotNull("Sort is null", p.getSort().getOrderFor("name")); assertEquals(Sort.Direction.DESC, p.getSort().getOrderFor("name").getDirection()); }
From source file:com.trenako.web.controllers.admin.AdminBrandsControllerMappingTests.java
@Test public void shouldProcessBrandsPagingParameters() throws Exception { ArgumentCaptor<Pageable> arg = ArgumentCaptor.forClass(Pageable.class); mockMvc().perform(get("/admin/brands").param("page.page", "2").param("page.size", "25") .param("page.sort", "name").param("page.sort.dir", "desc")).andExpect(status().isOk()); verify(mockService, times(1)).findAll(arg.capture()); Pageable p = arg.getValue(); assertEquals(1, p.getPageNumber());// w w w . jav a2s.c o m assertEquals(25, p.getPageSize()); assertNotNull("Sort is null", p.getSort().getOrderFor("name")); assertEquals(Sort.Direction.DESC, p.getSort().getOrderFor("name").getDirection()); }