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

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

Introduction

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

Prototype

long getTotalElements();

Source Link

Document

Returns the total amount of elements.

Usage

From source file:org.egov.api.controller.ComplaintController.java

/**
 * This will display the latest complaint except current user.
 *
 * @param page/* w  ww.  j  a  va 2s . c  o  m*/
 * @param pageSize
 * @return Complaint
 */

@RequestMapping(value = ApiUrl.COMPLAINT_LATEST, method = GET, produces = TEXT_PLAIN_VALUE)
public ResponseEntity<String> getLatest(@PathVariable("page") int page,
        @PathVariable("pageSize") int pageSize) {

    if (page < 1)
        return getResponseHandler().error(INVALID_PAGE_NUMBER_ERROR);
    try {
        final Page<Complaint> pagelist = complaintService.getLatest(page, pageSize);
        final boolean hasNextPage = pagelist.getTotalElements() > page * pageSize;
        return getResponseHandler().putStatusAttribute(HAS_NEXT_PAGE, String.valueOf(hasNextPage))
                .setDataAdapter(new ComplaintAdapter()).success(pagelist.getContent());
    } catch (final Exception e) {
        LOGGER.error(EGOV_API_ERROR, e);
        return getResponseHandler().error(getMessage(SERVER_ERROR));
    }

}

From source file:org.egov.api.controller.ComplaintController.java

/**
 * This will returns complaint list of current user.
 *
 * @param page/*from ww  w.j  a  v  a 2s .c o  m*/
 * @param pageSize
 * @return Complaint
 */

@RequestMapping(value = ApiUrl.CITIZEN_GET_MY_COMPLAINT, method = GET, produces = TEXT_PLAIN_VALUE)
public ResponseEntity<String> getMyComplaint(@PathVariable("page") final int page,
        @PathVariable("pageSize") final int pageSize, @RequestParam(required = false) String complaintStatus) {

    if (page < 1)
        return getResponseHandler().error(INVALID_PAGE_NUMBER_ERROR);
    try {

        Page<Complaint> pagelist = null;
        boolean hasNextPage = false;
        if (isEmpty(complaintStatus) || complaintStatus.equals(PGRConstants.COMPLAINT_ALL)) {
            pagelist = complaintService.getMyComplaint(page, pageSize);
            hasNextPage = pagelist.getTotalElements() > page * pageSize;
        } else if (complaintStatus.equals(PGRConstants.COMPLAINT_PENDING)) {
            pagelist = complaintService.getMyPendingGrievances(page, pageSize);
            hasNextPage = pagelist.getTotalElements() > page * pageSize;
        } else if (complaintStatus.equals(PGRConstants.COMPLAINT_COMPLETED)) {
            pagelist = complaintService.getMyCompletedGrievances(page, pageSize);
            hasNextPage = pagelist.getTotalElements() > page * pageSize;
        } else if (complaintStatus.equals(PGRConstants.COMPLAINT_REJECTED)) {
            pagelist = complaintService.getMyRejectedGrievances(page, pageSize);
            hasNextPage = pagelist.getTotalElements() > page * pageSize;
        }

        if (pagelist == null)
            return getResponseHandler().error("Invalid Complaint Status!");
        else
            return getResponseHandler().putStatusAttribute(HAS_NEXT_PAGE, String.valueOf(hasNextPage))
                    .setDataAdapter(new ComplaintAdapter()).success(pagelist.getContent());

    } catch (final Exception e) {
        LOGGER.error(EGOV_API_ERROR, e);
        return getResponseHandler().error(getMessage(SERVER_ERROR));
    }

}

From source file:org.egov.pgr.web.controller.masters.escalationTime.ViewEscalationTimeController.java

public String commonSearchResult(final Integer pageNumber, final Integer pageSize, final Long complaintTypeId,
        final Long designationId) {

    final Page<Escalation> pageOfEscalation = escalationService.getPageOfEscalations(pageNumber, pageSize,
            complaintTypeId, designationId);
    final List<Escalation> positionList = pageOfEscalation.getContent();
    final StringBuilder complaintRouterJSONData = new StringBuilder();
    complaintRouterJSONData.append("{\"draw\": ").append("0");
    complaintRouterJSONData.append(",\"recordsTotal\":").append(pageOfEscalation.getTotalElements());
    complaintRouterJSONData.append(",\"totalDisplayRecords\":").append(pageSize);
    complaintRouterJSONData.append(",\"recordsFiltered\":").append(pageOfEscalation.getTotalElements());
    complaintRouterJSONData.append(",\"data\":").append(toJSON(positionList)).append("}");
    return complaintRouterJSONData.toString();
}

From source file:org.egov.stms.web.controller.notice.SewerageNoticeController.java

@RequestMapping(value = "/searchResult", method = RequestMethod.POST)
@ResponseBody// w  ww  . j a v  a  2 s  . c  o  m
public DataTable<SewerageSearchResult> searchApplication(
        @ModelAttribute final SewerageNoticeSearchRequest searchRequest) {
    final List<SewerageSearchResult> searchResultFomatted = new ArrayList<>();
    final Page<SewerageIndex> searchResult = getNoticeSearchResult(searchRequest);
    final Pageable pageable = seweragePaginationService.sewerageNoticeSearch(searchRequest,
            searchResultFomatted, searchResult);
    return new DataTable<>(new PageImpl<>(searchResultFomatted, pageable, searchResult.getTotalElements()),
            searchRequest.draw());
}

From source file:org.egov.tl.service.TradeLicenseService.java

@ReadOnly
public Page<SearchForm> searchTradeLicense(final SearchForm searchForm) {
    Pageable pageable = new PageRequest(searchForm.pageNumber(), searchForm.pageSize(), searchForm.orderDir(),
            searchForm.orderBy());//from   w ww .  j ava 2  s  .com
    User currentUser = securityUtils.getCurrentUser();
    Page<TradeLicense> licenses = searchTradeRepository.findAll(SearchTradeSpec.searchTrade(searchForm),
            pageable);
    List<SearchForm> searchResults = new ArrayList<>();
    licenses.forEach(license -> searchResults.add(new SearchForm(license, currentUser, getOwnerName(license),
            licenseConfigurationService.getFeeCollectorRoles())));
    return new PageImpl<>(searchResults, pageable, licenses.getTotalElements());
}

From source file:org.jobscheduler.dashboard.web.rest.SchedulerHistoryResource.java

@RequestMapping("/schedulerHistories")
@ApiOperation(value = "Get list scheduler history")
public @ResponseBody ListDTO schedulerHistories(Model model, @RequestParam(value = "count") Integer count,
        @RequestParam(value = "page") Integer page, HttpServletRequest request)
        throws UnsupportedEncodingException {

    // Spring Data count from page 0, ngTable from page 1
    page--;/*from w w w  .  ja  v  a 2s .  co m*/
    Enumeration<String> parametersNames = request.getParameterNames();

    // Parameters
    String jobName = "%";
    String spoolerId = "%";
    BigDecimal error = null;

    DateTime startDT = DateTime.now().minusDays(100);
    DateTime endDT = DateTime.now();

    // For sorting
    List<Order> orders = new ArrayList<Order>();

    while (parametersNames.hasMoreElements()) {
        String parameterName = (String) parametersNames.nextElement();

        // Filtering
        if (parameterName.startsWith(Constant.PARAM_FILTER)) {
            String filter = request.getParameter(parameterName);
            String parameterFilter = parameterName.substring(parameterName.indexOf("[") + 1,
                    parameterName.indexOf("]"));
            String decodedFilter = URLDecoder.decode(filter, "UTF-8");
            if (parameterFilter.equals("jobName")) {
                jobName = "%" + decodedFilter + "%";
            }
            if (parameterFilter.equals("spoolerId")) {
                spoolerId = "%" + decodedFilter + "%";
            }
            if (parameterFilter.equals("error")) {
                error = new BigDecimal(filter);
            }
            if (parameterFilter.equals("startTime")) {
                startDT = DateTime.parse(decodedFilter, fmt);
            }
            if (parameterFilter.equals("endTime")) {
                endDT = DateTime.parse(decodedFilter, fmt);
            }

            log.info("Filter in get list history : " + parameterName + "=" + filter);
        }

        // Sorting
        if (parameterName.startsWith(Constant.PARAM_SORT)) {
            String directionParameter = request.getParameter(parameterName);
            String sortByColumnName = parameterName.substring(parameterName.indexOf("[") + 1,
                    parameterName.indexOf("]"));
            String direction = URLDecoder.decode(directionParameter, "UTF-8");
            orders.add(new Order(Direction.fromString(direction), sortByColumnName));
        }
    }

    PageRequest pageable;
    if (orders.size() == 0)
        pageable = new PageRequest(page, count);
    else
        pageable = new PageRequest(page, count, new Sort(orders));

    ListDTO dto = new ListDTO();

    Page<SchedulerHistory> scheduleJob;
    if (error != null)
        scheduleJob = schedulerHistoryRepository.findByStartTimeBetweenAndJobNameLikeAndSpoolerIdLikeAndError(
                new Timestamp(startDT.getMillis()), new Timestamp(endDT.getMillis()), jobName, spoolerId, error,
                pageable);

    else
        scheduleJob = schedulerHistoryRepository.findByStartTimeBetweenAndJobNameLikeAndSpoolerIdLike(
                new Timestamp(startDT.getMillis()), new Timestamp(endDT.getMillis()), jobName, spoolerId,
                pageable);

    dto.setResult(scheduleJob.getContent());
    dto.setTotalElements(scheduleJob.getTotalElements());
    dto.setTotalPages(scheduleJob.getTotalPages());

    return dto;
}

From source file:org.jtalks.jcommune.model.dao.search.hibernate.TopicHibernateSearchDao.java

/**
 * {@inheritDoc}// ww w  .ja v a  2s. c  om
 */
@Override
public Page<Topic> searchByTitleAndContent(String searchText, PageRequest pageRequest,
        List<Long> allowedBranchesIds) {

    Page<Topic> searchResults = doSearch(searchText, pageRequest, allowedBranchesIds);

    if (isSearchedAboveLastPage(searchResults)) {
        pageRequest.adjustPageNumber(Long.valueOf(searchResults.getTotalElements()).intValue());
        searchResults = doSearch(searchText, pageRequest, allowedBranchesIds);
    }

    return searchResults;
}

From source file:org.jtalks.jcommune.model.dao.search.hibernate.TopicHibernateSearchDaoTest.java

@Test
public void testSearchPaging() {
    int totalSize = 50;
    int pageCount = 2;
    int pageSize = totalSize / pageCount;
    String searchText = "JCommune";
    PageRequest pageRequest = new PageRequest("1", pageSize);
    List<Topic> topicList = PersistedObjectsFactory.createAndSaveTopicList(totalSize);
    for (Topic topic : topicList) {
        topic.setTitle(searchText);/*from  www.  j  a v  a  2s. co m*/
    }

    saveAndFlushIndexes(topicList);
    configureMocks(searchText, searchText);

    Page<Topic> searchResultPage = topicSearchDao.searchByTitleAndContent(searchText, pageRequest,
            Arrays.asList(topicList.get(0).getBranch().getId()));

    assertEquals(searchResultPage.getContent().size(), pageSize, "Incorrect count of topics in one page.");
    assertEquals(searchResultPage.getTotalElements(), totalSize, "Incorrect total count.");
    assertEquals(searchResultPage.getTotalPages(), pageCount, "Incorrect count of pages.");

}

From source file:org.springframework.cloud.dataflow.server.service.impl.AbstractStreamService.java

@Override
public Page<StreamDefinition> findDefinitionByNameLike(Pageable pageable, String search) {
    Page<StreamDefinition> streamDefinitions;
    if (search != null) {
        final SearchPageable searchPageable = new SearchPageable(pageable, search);
        searchPageable.addColumns("DEFINITION_NAME", "DEFINITION");
        streamDefinitions = streamDefinitionRepository.findByNameLike(searchPageable);
        long count = streamDefinitions.getContent().size();
        long to = Math.min(count, pageable.getOffset() + pageable.getPageSize());
        streamDefinitions = new PageImpl<>(streamDefinitions.getContent(), pageable,
                streamDefinitions.getTotalElements());
    } else {//w w  w. ja  va 2s. c  o  m
        streamDefinitions = streamDefinitionRepository.findAll(pageable);
    }
    return streamDefinitions;
}

From source file:org.springframework.data.elasticsearch.core.ElasticsearchTemplate.java

@Override
public <T> T queryForObject(CriteriaQuery query, Class<T> clazz) {
    Page<T> page = queryForPage(query, clazz);
    Assert.isTrue(page.getTotalElements() < 2, "Expected 1 but found " + page.getTotalElements() + " results");
    return page.getTotalElements() > 0 ? page.getContent().get(0) : null;
}