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.jblogcms.core.post.service.PostServiceImplTest.java

@Test
public void findBlogPosts() throws Exception {
    List<Long> postIds = Arrays.asList(POST_1_ID, POST_2_ID, POST_3_ID);

    when(postRepositoryMock.findBlogPosts(BLOG_ID, pageable)).thenReturn(posts);
    when(postRepositoryMock.findPostsByPostIds(postIds)).thenReturn(postList);
    when(postToolServiceMock.addItemRelationsToItemPage(posts, CURRENT_ACCOUNT_ID)).thenReturn(posts);
    when(postToolServiceMock.addItemRatesToItemPage(posts, CURRENT_ACCOUNT_ID)).thenReturn(posts);

    Page<Post> testPosts = postService.findBlogPosts(BLOG_ID, pageable, CURRENT_ACCOUNT_ID);

    verify(postRepositoryMock, times(1)).findBlogPosts(BLOG_ID, pageable);
    verify(postRepositoryMock, times(1)).findPostsByPostIds(postIds);
    verify(postToolServiceMock, times(1)).addItemRelationsToItemPage(posts, CURRENT_ACCOUNT_ID);
    verify(postToolServiceMock, times(1)).addItemRatesToItemPage(posts, CURRENT_ACCOUNT_ID);

    Assert.assertEquals(POSTS_SIZE, testPosts.getTotalElements());

    Assert.assertEquals(POST_1_ID, testPosts.getContent().get(0).getId());
    Assert.assertEquals(POST_1_TITLE, testPosts.getContent().get(0).getTitle());

    Assert.assertEquals(POST_2_ID, testPosts.getContent().get(1).getId());
    Assert.assertEquals(POST_2_TITLE, testPosts.getContent().get(1).getTitle());

    Assert.assertEquals(POST_3_ID, testPosts.getContent().get(2).getId());
    Assert.assertEquals(POST_3_TITLE, testPosts.getContent().get(2).getTitle());
}

From source file:com.restfiddle.controller.rest.ConversationController.java

@RequestMapping(value = "/api/conversations", method = RequestMethod.GET)
public @ResponseBody PaginatedResponse<ConversationDTO> findAll(
        @RequestParam(value = "page", required = false) Integer page,
        @RequestParam(value = "limit", required = false) Integer limit) {
    logger.debug("Finding all items");

    int pageNo = 0;
    if (page != null && page > 0) {
        pageNo = page;//from w  ww  .  j  a v a2  s  .com
    }

    int numberOfRecords = 10;
    if (limit != null && limit > 0) {
        numberOfRecords = limit;
    }

    Sort sort = new Sort(Direction.DESC, "lastModifiedDate");
    Pageable topRecords = new PageRequest(pageNo, numberOfRecords, sort);
    Page<Conversation> result = itemRepository.findAll(topRecords);

    List<Conversation> content = result.getContent();

    List<ConversationDTO> responseContent = new ArrayList<ConversationDTO>();
    for (Conversation item : content) {
        responseContent.add(EntityToDTO.toDTO(item));
    }

    PaginatedResponse<ConversationDTO> response = new PaginatedResponse<ConversationDTO>();
    response.setData(responseContent);
    response.setLimit(numberOfRecords);
    response.setPage(pageNo);
    response.setTotalElements(result.getTotalElements());
    response.setTotalPages(result.getTotalPages());

    for (Conversation item : content) {
        RfRequest rfRequest = item.getRfRequest();
        logger.debug(rfRequest.getApiUrl());
    }
    return response;
}

From source file:com.thinkbiganalytics.feedmgr.service.feed.FeedModelTransform.java

/**
 * Transforms the specified Metadata feeds to Feed Manager feed summaries.
 *
 * @param domain the Metadata feed/*from   w ww .ja  va2s .  c om*/
 * @return the Feed Manager feed summaries
 */
@Nonnull
public Page<UIFeed> domainToFeedSummary(@Nonnull final Page<Feed> domain, @Nonnull final Pageable pageable) {
    List<UIFeed> summaries = domain.getContent().stream().map(this::domainToFeedSummary)
            .filter(feedSummary -> feedSummary != null).collect(Collectors.toList());
    return new PageImpl<>(summaries, pageable, domain.getTotalElements());
}

From source file:com.excilys.ebi.bank.web.controller.account.operations.OperationsTableConverter.java

@Override
public OperationsTable convert(Page<Operation> source) {

    /*/*from   ww w  . j a  va  2 s  . co  m*/
     * For the brave souls who get this far: You are the chosen ones, the
     * valiant knights of programming who toil away, without rest, fixing
     * our most awful code. To you, true saviors, kings of men, I say this:
     * never gonna give you up, never gonna let you down, never gonna run
     * around and desert you. Never gonna make you cry, never gonna say
     * goodbye. Never gonna tell a lie and hurt you.
     */

    OperationsTable table = new OperationsTable();
    table.setNumber(source.getNumber());
    table.setNumberOfElements(source.getNumberOfElements());
    table.setSize(source.getSize());
    table.setTotalElements(source.getTotalElements());
    table.setTotalPages(source.getTotalPages());
    table.setHasContent(source.hasContent());
    table.setHasNextPage(source.hasNextPage());
    table.setHasPreviousPage(source.hasPreviousPage());
    table.setFirstPage(source.isFirstPage());
    table.setLastPage(source.isLastPage());
    table.setStartIndex(source.getTotalElements() > 0 ? source.getSize() * source.getNumber() + 1 : 0);
    table.setPageIndex(source.getTotalElements() > 0 ? source.getNumber() + 1 : 0);
    table.setEndIndex(source.getSize() * source.getNumber() + source.getNumberOfElements());

    for (Operation operation : source.getContent()) {

        OperationsLine line = new OperationsLine();
        line.setAmount(operation.getAmount());
        line.setDate(operation.getDate().toString("MM/dd/yyyy"));
        line.setName(operation.getName());
        line.setStatus(operation.getStatus().getId());
        table.getLines().add(line);
    }

    for (int i = 0; i < source.getSize() - source.getNumberOfElements(); i++) {
        table.getEmptyLines().add(StringUtils.EMPTY);
    }

    return table;
}

From source file:com.wiiyaya.provider.main.service.impl.RoleServiceImpl.java

@Override
@Transactional(readOnly = true)/*  w  ww.  jav a 2 s  .com*/
public EasyUiDataGrid<RoleDto> getAllRoles(final RoleDto roleDto, Pageable pageRequest) {
    List<RoleDto> rstList = new ArrayList<>();
    Page<Role> roleDbs = roleDao.findAllJF(new JF() {
        @Override
        public void prepareQry(JPQLQuery qry, boolean notCountQry) {
            RoleQry.searchRole(qry, notCountQry, roleDto);
        }
    }, pageRequest);
    for (Role roleDb : roleDbs) {
        RoleDto dto = new RoleDto();
        dto.setId(roleDb.getId());
        dto.setName(roleDb.getName());
        List<String> pNames = new ArrayList<>();
        for (Privilege p : roleDb.getPrivileges()) {
            pNames.add(p.getDesc());
        }
        dto.setPrivilegeNames(StringUtils.join(pNames, StringUtils.SPACE));
        rstList.add(dto);
    }
    return new EasyUiDataGrid<>(rstList, roleDbs.getTotalElements());
}

From source file:gr.abiss.calipso.controller.AbstractServiceBasedRestController.java

@RequestMapping(value = "reports", produces = { "application/json" }, method = RequestMethod.GET)
@ResponseBody/*from   w  ww .j  a va2 s .c om*/
//@ApiOperation(value = "reports", httpMethod = "GET")
public Page<ReportDataSet> getReportDatasets(

        @RequestParam(value = "page", required = false, defaultValue = "1") Integer page,
        @RequestParam(value = "size", required = false, defaultValue = "10") Integer size,
        @RequestParam(value = "properties", required = false, defaultValue = "id") String sort,
        @RequestParam(value = "direction", required = false, defaultValue = "ASC") String direction,

        @RequestParam(value = "timeUnit", required = false, defaultValue = "DAY") TimeUnit timeUnit,
        @RequestParam(value = "dateField", required = false, defaultValue = "createdDate") String dateField,
        @RequestParam(value = "period", required = false) String period,
        @RequestParam(value = "reportType", required = false) String reportType) {

    if (StringUtils.isBlank(period)) {
        GregorianCalendar now = new GregorianCalendar();
        StringBuffer buff = new StringBuffer();
        if (timeUnit.equals(TimeUnit.DAY)) {
            buff.append(now.get(Calendar.MONTH)).append('/');
        }
        period = buff.append(now.get(Calendar.YEAR)).toString();
    }
    LOGGER.info("getReportDatasets, timeUnit: " + timeUnit + ", dateField: " + dateField + ", period: " + period
            + ", reportName: " + reportType);
    GregorianCalendar start = null;
    GregorianCalendar end = null;
    if (timeUnit.equals(TimeUnit.DAY)) {
        String[] monthYear = period.split("/");
        start = new GregorianCalendar(Integer.parseInt(monthYear[1]), Integer.parseInt(monthYear[0]) - 1, 0);
        end = new GregorianCalendar(Integer.parseInt(monthYear[1]), Integer.parseInt(monthYear[0]) - 1, 0);
        end.set(Calendar.DAY_OF_MONTH, end.getActualMaximum(Calendar.DAY_OF_MONTH));
    } else {
        start = new GregorianCalendar(Integer.parseInt(period), 0, 0);
        end = new GregorianCalendar(Integer.parseInt(period), 11, 0);
        end.set(Calendar.DAY_OF_MONTH, end.getActualMaximum(Calendar.DAY_OF_MONTH));
    }

    start.set(Calendar.HOUR_OF_DAY, start.getMinimum(Calendar.HOUR_OF_DAY));
    start.set(Calendar.MINUTE, start.getMinimum(Calendar.MINUTE));
    start.set(Calendar.SECOND, start.getMinimum(Calendar.SECOND));
    start.set(Calendar.MILLISECOND, start.getMinimum(Calendar.MILLISECOND));

    end.set(Calendar.HOUR_OF_DAY, end.getMinimum(Calendar.HOUR_OF_DAY));
    end.set(Calendar.MINUTE, end.getMinimum(Calendar.MINUTE));
    end.set(Calendar.SECOND, end.getMinimum(Calendar.SECOND));
    end.set(Calendar.MILLISECOND, end.getMinimum(Calendar.MILLISECOND));

    Map<String, String[]> paramsMap = request.getParameterMap();
    LOGGER.info("getReportDatasets, timeUnit: " + timeUnit + ", dateField: " + dateField + ", dateFrom: "
            + start + ", dateTo: " + end + ", reportName: " + reportType);
    Pageable pageable = buildPageable(page, size, sort, direction, paramsMap);
    Page<ReportDataSet> results = this.service.getReportDatasets(pageable, timeUnit, dateField, start.getTime(),
            end.getTime(), reportType);
    LOGGER.info("getReportDatasets returning " + results.getTotalElements());
    return results;
}

From source file:io.manasobi.license.LicenseController.java

private void buildPager(Page<LicenseDetails> page, Model model) {

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

    //List<LicenseDetails> licenseDetailsList = new ArrayList<>();

    for (LicenseDetails licenseDetails : page.getContent()) {

        Date createdDate = licenseDetails.getCreatedDate();

        licenseDetails.setCreatedDateStr(convertISODateToDate(createdDate));
    }//ww w  .j  a  v a2s  .  c  o  m

    model.addAttribute("pager", page);
    model.addAttribute("info", page.getContent());
    model.addAttribute("beginIndex", begin);
    model.addAttribute("endIndex", end);
    model.addAttribute("currentIndex", current);
    model.addAttribute("totalRecordCount", page.getTotalElements());
    model.addAttribute("recordCountPerPage", page.getSize());
}

From source file:com.company.project.data.elasticsearch.service.UserESServiceTest.java

public void testQueryWithFilter() {
    System.out.println("testRepository");

    //elasticsearchTemplate.deleteIndex("xuseridx");
    elasticsearchTemplate.deleteIndex(User.class);
    elasticsearchTemplate.createIndex(User.class);
    //elasticsearchTemplate.createIndex(User.class, user);
    //elasticsearchTemplate.createIndex("xuseridx");

    elasticsearchTemplate.putMapping(User.class);
    elasticsearchTemplate.refresh(User.class, true);

    String id = UUID.randomUUID().toString();
    User user = new User();
    user.setId(id);/*from ww w  .  ja  v  a2  s  .  c o m*/
    user.setName("user-" + id);
    user.setRole(1l);
    Map<Integer, Collection<String>> userFilter = new HashMap<>();
    userFilter.put(1, Arrays.asList("filter1", "filter2"));
    userFilter.put(2, Arrays.asList("filter11", "filter12"));
    user.setFilter(userFilter);
    userRepository.save(user);

    List<User> users = new ArrayList<>();
    id = UUID.randomUUID().toString();
    user = new User();
    user.setId(id);
    user.setName("user-" + id);
    user.setRole(2l);
    userFilter = new HashMap<>();
    userFilter.put(1, Arrays.asList("filter1", "filter3"));
    userFilter.put(2, Arrays.asList("filter11", "filter13"));
    user.setFilter(userFilter);
    users.add(user);
    id = UUID.randomUUID().toString();
    user = new User();
    user.setId(id);
    user.setName("user-" + id);
    user.setRole(3l);
    userFilter = new HashMap<>();
    userFilter.put(1, Arrays.asList("filter1", "filter4"));
    userFilter.put(2, Arrays.asList("filter11", "filter14"));
    user.setFilter(userFilter);
    users.add(user);
    userRepository.save(users);

    elasticsearchTemplate.refresh(User.class, true);

    // list all users with "filter1" on map key "1"
    SearchQuery searchQuery = new NativeSearchQueryBuilder()
            .withQuery(nestedQuery("filter", termQuery("filter.1", "filter1"))).build();
    Page<User> pagedUsers = userRepository.search(searchQuery);
    assertEquals(3, pagedUsers.getTotalElements());
    System.out.println("Paged user 1 : " + pagedUsers.getContent().get(0).getName());
    System.out.println("Paged user 2 : " + pagedUsers.getContent().get(1).getName());
    System.out.println("Paged user 3 : " + pagedUsers.getContent().get(2).getName());

    // list all users with "filter3" on map key "1"
    searchQuery = new NativeSearchQueryBuilder()
            .withQuery(nestedQuery("filter", termQuery("filter.1", "filter3"))).build();
    pagedUsers = userRepository.search(searchQuery);
    assertEquals(1, pagedUsers.getTotalElements());
    System.out.println("Paged user 1 : " + pagedUsers.getContent().get(0).getName());
}