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

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

Introduction

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

Prototype

int getNumberOfElements();

Source Link

Document

Returns the number of elements currently on this Slice .

Usage

From source file:com.netflix.genie.core.jpa.services.JpaCommandServiceImplIntegrationTests.java

/**
 * Test the get commands method order by an invalid field should return the order by default value (updated).
 *///from  ww  w . j a  v  a 2  s .  c om
@Test(expected = PropertyReferenceException.class)
public void testGetClustersOrderBysInvalidField() {
    final Pageable invalid = new PageRequest(0, 10, Sort.Direction.DESC, "I'mNotAValidField");
    final Page<Command> commands = this.service.getCommands(null, null, null, null, invalid);
    Assert.assertEquals(3, commands.getNumberOfElements());
    Assert.assertEquals(COMMAND_2_ID,
            commands.getContent().get(0).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_3_ID,
            commands.getContent().get(1).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_1_ID,
            commands.getContent().get(2).getId().orElseThrow(IllegalArgumentException::new));
}

From source file:com.netflix.genie.core.jpa.services.JpaCommandServiceImplIntegrationTests.java

/**
 * Test the get commands method./*w ww .j  a  v  a  2s  .c  o  m*/
 */
@Test
public void testGetCommandsByName() {
    final Page<Command> commands = this.service.getCommands(COMMAND_2_NAME, null, null, null, PAGE);
    Assert.assertEquals(1, commands.getNumberOfElements());
    Assert.assertEquals(COMMAND_2_ID,
            commands.getContent().get(0).getId().orElseThrow(IllegalArgumentException::new));
}

From source file:com.netflix.genie.core.jpa.services.JpaCommandServiceImplIntegrationTests.java

/**
 * Test the get commands method with ascending sort.
 *///w ww  .j a  v a 2  s . c om
@Test
public void testGetClustersAscending() {
    final Pageable ascending = new PageRequest(0, 10, Sort.Direction.ASC, "updated");
    //Default to order by Updated
    final Page<Command> commands = this.service.getCommands(null, null, null, null, ascending);
    Assert.assertEquals(3, commands.getNumberOfElements());
    Assert.assertEquals(COMMAND_1_ID,
            commands.getContent().get(0).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_3_ID,
            commands.getContent().get(1).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_2_ID,
            commands.getContent().get(2).getId().orElseThrow(IllegalArgumentException::new));
}

From source file:com.netflix.genie.core.jpa.services.JpaCommandServiceImplIntegrationTests.java

/**
 * Test the get commands method./*from w  w w  . jav  a 2 s.com*/
 */
@Test
public void testGetCommandsByUserName() {
    final Page<Command> commands = this.service.getCommands(null, COMMAND_1_USER, null, null, PAGE);
    Assert.assertEquals(2, commands.getNumberOfElements());
    Assert.assertEquals(COMMAND_3_ID,
            commands.getContent().get(0).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_1_ID,
            commands.getContent().get(1).getId().orElseThrow(IllegalArgumentException::new));
}

From source file:de.hska.ld.content.controller.DocumentController.java

/**
 * Fetches a page of commments for a specifc document.
 * <p>/*from   w w w .  jav a2 s. c  om*/
 * <pre>
 *     <b>Required roles:</b> ROLE_USER
 *     <b>Path:</b> GET /api/document/{documentId}/comment?page-number=0&amp;page-size=10&amp;sort-direction=DESC&amp;sort-property=createdAt
 * </pre>
 *
 * @param documentId the document id of the document the comments shall be fetched for
 * @return <b>200 OK</b> and a list of comments
 * <b>404 NOT FOUND</b> if there is no document present within the system that has the specified documentId
 */
@Secured(Core.ROLE_USER)
@RequestMapping(method = RequestMethod.GET, value = "/{documentId}/comment")
@Transactional(readOnly = true)
public Callable getCommentsPage(@PathVariable Long documentId,
        @RequestParam(value = "page-number", defaultValue = "0") Integer pageNumber,
        @RequestParam(value = "page-size", defaultValue = "10") Integer pageSize,
        @RequestParam(value = "sort-direction", defaultValue = "DESC") String sortDirection,
        @RequestParam(value = "sort-property", defaultValue = "createdAt") String sortProperty) {
    return () -> {
        Page<Comment> commentsPage = commentService.getDocumentCommentsPage(documentId, pageNumber, pageSize,
                sortDirection, sortProperty);
        if (commentsPage != null && commentsPage.getNumberOfElements() > 0) {
            return new ResponseEntity<>(commentsPage, HttpStatus.OK);
        } else {
            throw new NotFoundException();
        }
    };
}

From source file:com.netflix.genie.core.jpa.services.JpaCommandServiceImplIntegrationTests.java

/**
 * Test the get commands method.//from   ww w.  j  a v a2s  .  co m
 */
@Test
public void testGetCommandsByTags() {
    final Set<String> tags = Sets.newHashSet("prod");
    Page<Command> commands = this.service.getCommands(null, null, null, tags, PAGE);
    Assert.assertEquals(3, commands.getNumberOfElements());
    Assert.assertEquals(COMMAND_2_ID,
            commands.getContent().get(0).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_3_ID,
            commands.getContent().get(1).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_1_ID,
            commands.getContent().get(2).getId().orElseThrow(IllegalArgumentException::new));

    tags.add("pig");
    commands = this.service.getCommands(null, null, null, tags, PAGE);
    Assert.assertEquals(2, commands.getNumberOfElements());
    Assert.assertEquals(COMMAND_3_ID,
            commands.getContent().get(0).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_1_ID,
            commands.getContent().get(1).getId().orElseThrow(IllegalArgumentException::new));

    tags.clear();
    tags.add("hive");
    commands = this.service.getCommands(null, null, null, tags, PAGE);
    Assert.assertEquals(1, commands.getNumberOfElements());
    Assert.assertEquals(COMMAND_2_ID,
            commands.getContent().get(0).getId().orElseThrow(IllegalArgumentException::new));

    tags.add("somethingThatWouldNeverReallyExist");
    commands = this.service.getCommands(null, null, null, tags, PAGE);
    Assert.assertTrue(commands.getContent().isEmpty());

    tags.clear();
    commands = this.service.getCommands(null, null, null, tags, PAGE);
    Assert.assertEquals(3, commands.getNumberOfElements());
    Assert.assertEquals(COMMAND_2_ID,
            commands.getContent().get(0).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_3_ID,
            commands.getContent().get(1).getId().orElseThrow(IllegalArgumentException::new));
    Assert.assertEquals(COMMAND_1_ID,
            commands.getContent().get(2).getId().orElseThrow(IllegalArgumentException::new));
}

From source file:nu.yona.server.analysis.service.ActivityServiceTest.java

@Test
public void getUserDayActivityOverviews_activityPresent_resultsWithActivity() {
    ZonedDateTime today = getDayStartTime(ZonedDateTime.now(userAnonZone));
    ZonedDateTime yesterday = today.minusDays(1);

    // gambling goal was created 2 weeks ago, see above
    // mock some activity on yesterday 20:58-21:00
    DayActivity yesterdayRecordedActivity = DayActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, yesterday.toLocalDate());
    Activity recordedActivity = Activity.createInstance(userAnonZone,
            yesterday.plusHours(20).plusMinutes(58).toLocalDateTime(),
            yesterday.plusHours(21).plusMinutes(00).toLocalDateTime(), Optional.empty());
    yesterdayRecordedActivity.addActivity(recordedActivity);
    Set<UUID> relevantGoalIds = userAnonEntity.getGoals().stream().map(Goal::getId).collect(Collectors.toSet());
    when(mockDayActivityRepository.findAll(userAnonId, relevantGoalIds, today.minusDays(2).toLocalDate(),
            today.plusDays(1).toLocalDate())).thenReturn(Arrays.asList(yesterdayRecordedActivity));

    Page<DayActivityOverviewDto<DayActivityDto>> dayOverviews = service.getUserDayActivityOverviews(userId,
            new PageRequest(0, 3));

    // assert that the right retrieve from database was done
    verify(mockDayActivityRepository, times(1)).findAll(userAnonId, relevantGoalIds,
            today.minusDays(2).toLocalDate(), today.plusDays(1).toLocalDate());

    // because the gambling goal was added with creation date two weeks ago, there are multiple days, equal to the limit of
    // our page request = 3
    assertThat(dayOverviews.getNumberOfElements(), equalTo(3));

    // get the current day (first item)
    DayActivityOverviewDto<DayActivityDto> dayOverview = dayOverviews.getContent().get(0);
    assertThat(dayOverview.getDayActivities().size(), equalTo(userAnonEntity.getGoals().size()));
    DayActivityDto dayActivityForGambling = dayOverview.getDayActivities().stream()
            .filter(a -> a.getGoalId().equals(gamblingGoal.getId())).findAny().get();
    assertThat(dayActivityForGambling.getStartTime(), equalTo(today));
    assertThat(dayActivityForGambling.getTotalActivityDurationMinutes().get(), equalTo(0));
    assertThat(dayActivityForGambling.getTotalMinutesBeyondGoal(), equalTo(0));

    // get yesterday, with recorded activity
    dayOverview = dayOverviews.getContent().get(1);
    assertThat(dayOverview.getDayActivities().size(), equalTo(1));
    dayActivityForGambling = dayOverview.getDayActivities().stream()
            .filter(a -> a.getGoalId().equals(gamblingGoal.getId())).findAny().get();
    assertThat(dayActivityForGambling.getStartTime(), equalTo(yesterday));
    assertThat(dayActivityForGambling.getTotalActivityDurationMinutes().get(), equalTo(2));
    assertThat(dayActivityForGambling.getTotalMinutesBeyondGoal(), equalTo(2));
}

From source file:nu.yona.server.analysis.service.ActivityServiceTest.java

@Test
public void getUserWeekActivityOverviews_activityPresent_resultsWithActivity() {
    ZonedDateTime today = getDayStartTime(ZonedDateTime.now(userAnonZone));

    // gambling goal was created 2 weeks ago, see above
    // mock some activity in previous week on Saturday 19:10-19:55
    WeekActivity previousWeekRecordedActivity = WeekActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, getWeekStartTime(today.minusWeeks(1)).toLocalDate());
    ZonedDateTime saturdayStartOfDay = getWeekStartTime(today).minusDays(1);
    DayActivity previousWeekSaturdayRecordedActivity = DayActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, saturdayStartOfDay.toLocalDate());
    Activity recordedActivity = Activity.createInstance(userAnonZone,
            saturdayStartOfDay.plusHours(19).plusMinutes(10).toLocalDateTime(),
            saturdayStartOfDay.plusHours(19).plusMinutes(55).toLocalDateTime(), Optional.empty());
    previousWeekSaturdayRecordedActivity.addActivity(recordedActivity);
    previousWeekRecordedActivity.addDayActivity(DayActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, getWeekStartTime(today).minusDays(7).toLocalDate()));
    previousWeekRecordedActivity.addDayActivity(DayActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, getWeekStartTime(today).minusDays(6).toLocalDate()));
    previousWeekRecordedActivity.addDayActivity(DayActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, getWeekStartTime(today).minusDays(5).toLocalDate()));
    previousWeekRecordedActivity.addDayActivity(DayActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, getWeekStartTime(today).minusDays(4).toLocalDate()));
    previousWeekRecordedActivity.addDayActivity(DayActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, getWeekStartTime(today).minusDays(3).toLocalDate()));
    previousWeekRecordedActivity.addDayActivity(DayActivity.createInstance(userAnonEntity, gamblingGoal,
            userAnonZone, getWeekStartTime(today).minusDays(2).toLocalDate()));
    previousWeekRecordedActivity.addDayActivity(previousWeekSaturdayRecordedActivity);

    when(mockWeekActivityRepository.findAll(userAnonId, getWeekStartTime(today.minusWeeks(4)).toLocalDate(),
            getWeekStartTime(today).plusWeeks(1).toLocalDate()))
                    .thenReturn(new HashSet<>(Arrays.asList(previousWeekRecordedActivity)));

    Page<WeekActivityOverviewDto> weekOverviews = service.getUserWeekActivityOverviews(userId,
            new PageRequest(0, 5));

    // assert that the right retrieve from database was done
    verify(mockWeekActivityRepository, times(1)).findAll(userAnonId,
            getWeekStartTime(today.minusWeeks(4)).toLocalDate(),
            getWeekStartTime(today).plusWeeks(1).toLocalDate());

    // because the gambling goal was added with creation date two weeks ago, there are multiple weeks
    assertThat(weekOverviews.getNumberOfElements(), equalTo(3));

    // get the current week (first item)
    WeekActivityOverviewDto weekOverview = weekOverviews.getContent().get(0);
    assertThat(weekOverview.getWeekActivities().size(), equalTo(userAnonEntity.getGoals().size()));
    WeekActivityDto weekActivityForGambling = weekOverview.getWeekActivities().stream()
            .filter(a -> a.getGoalId().equals(gamblingGoal.getId())).findAny().get();
    assertThat(weekActivityForGambling.getStartTime(), equalTo(getWeekStartTime(today)));
    // TODO: mock day activity in this week?
    // int thisWeekNumberOfWeekDaysPast = today.getDayOfWeek() == DayOfWeek.SUNDAY ? 0 : today.getDayOfWeek().getValue();
    // assertThat(weekActivityForGambling.getDayActivities().size(), equalTo(1 + thisWeekNumberOfWeekDaysPast));
    //// always contains Sunday because it is the first day of the week
    // assertThat(weekActivityForGambling.getDayActivities(), hasKey(DayOfWeek.SUNDAY));

    // get the previous week, with recorded activity
    weekOverview = weekOverviews.getContent().get(1);
    assertThat(weekOverview.getWeekActivities().size(), equalTo(1));
    weekActivityForGambling = weekOverview.getWeekActivities().stream()
            .filter(a -> a.getGoalId().equals(gamblingGoal.getId())).findAny().get();
    assertThat(weekActivityForGambling.getStartTime(), equalTo(getWeekStartTime(today.minusWeeks(1))));
    assertThat(weekActivityForGambling.getDayActivities().size(), equalTo(7));
    DayActivityDto previousWeekSaturdayActivity = weekActivityForGambling.getDayActivities()
            .get(DayOfWeek.SATURDAY);
    assertThat(previousWeekSaturdayActivity.getTotalActivityDurationMinutes().get(), equalTo(45));
    assertThat(previousWeekSaturdayActivity.getTotalMinutesBeyondGoal(), equalTo(45));
    DayActivityDto previousWeekFridayActivity = weekActivityForGambling.getDayActivities()
            .get(DayOfWeek.FRIDAY);
    assertThat(previousWeekFridayActivity.getTotalActivityDurationMinutes().get(), equalTo(0));

    // get the week the gambling goal was created
    weekOverview = weekOverviews.getContent().get(2);
    assertThat(weekOverview.getWeekActivities().size(), equalTo(1));
    weekActivityForGambling = weekOverview.getWeekActivities().stream()
            .filter(a -> a.getGoalId().equals(gamblingGoal.getId())).findAny().get();
    assertThat(weekActivityForGambling.getStartTime(), equalTo(getWeekStartTime(today.minusWeeks(2))));
    // TODO: mock day activity in this week?
    // int expectedNumberOfWeekDaysRecorded = gamblingGoal.getCreationTime().getDayOfWeek() == DayOfWeek.SUNDAY ? 7
    // : 7 - gamblingGoal.getCreationTime().getDayOfWeek().getValue();
    // assertThat(weekActivityForGambling.getDayActivities().size(), equalTo(expectedNumberOfWeekDaysRecorded));
    //// always contains Saturday because it is the last day of the week
    // assertThat(weekActivityForGambling.getDayActivities(), hasKey(DayOfWeek.SATURDAY));
}

From source file:org.eclipse.hawkbit.repository.jpa.DistributionSetManagementTest.java

@Test
@Description("Queries and loads the metadata related to a given software module.")
public void findAllDistributionSetMetadataByDsId() {
    // create a DS
    final DistributionSet ds1 = testdataFactory.createDistributionSet("testDs1");
    final DistributionSet ds2 = testdataFactory.createDistributionSet("testDs2");

    for (int index = 0; index < 10; index++) {
        createDistributionSetMetadata(ds1.getId(),
                new JpaDistributionSetMetadata("key" + index, ds1, "value" + index));
    }/*from   w w w  . j a  v  a2  s .  co m*/

    for (int index = 0; index < 8; index++) {
        createDistributionSetMetadata(ds2.getId(),
                new JpaDistributionSetMetadata("key" + index, ds2, "value" + index));
    }

    final Page<DistributionSetMetadata> metadataOfDs1 = distributionSetManagement
            .findMetaDataByDistributionSetId(PageRequest.of(0, 100), ds1.getId());

    final Page<DistributionSetMetadata> metadataOfDs2 = distributionSetManagement
            .findMetaDataByDistributionSetId(PageRequest.of(0, 100), ds2.getId());

    assertThat(metadataOfDs1.getNumberOfElements()).isEqualTo(10);
    assertThat(metadataOfDs1.getTotalElements()).isEqualTo(10);

    assertThat(metadataOfDs2.getNumberOfElements()).isEqualTo(8);
    assertThat(metadataOfDs2.getTotalElements()).isEqualTo(8);
}