Skip to content

Commit 6ce1995

Browse files
committed
DATACMNS-1613 - Fixed Chunk.getSize() for usage with an unpaged Pageable.
We now return the content length as size of a Chunk if no Pageable has been used to create a Chunk. This makes the usage of a Chunk without an explicit Pageable work just like it was requested with the size of the given content.
1 parent ced3dde commit 6ce1995

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

src/main/java/org/springframework/data/domain/Chunk.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ public int getNumber() {
7070
* @see org.springframework.data.domain.Slice#getSize()
7171
*/
7272
public int getSize() {
73-
return pageable.isPaged() ? pageable.getPageSize() : 0;
73+
return pageable.isPaged() ? pageable.getPageSize() : content.size();
7474
}
7575

7676
/*

src/test/java/org/springframework/data/domain/PageImplUnitTests.java

+11
Original file line numberDiff line numberDiff line change
@@ -174,4 +174,15 @@ public void returnsSelfPagablesIfThePageIsAlreadyTheFirstOrLastOne() {
174174
assertThat(page.nextPageable()).isEqualTo(Pageable.unpaged());
175175
assertThat(page.nextOrLastPageable()).isEqualTo(pageable);
176176
}
177+
178+
@Test // DATACMNS-1613
179+
public void usesContentLengthForSizeIfNoPageableGiven() {
180+
181+
Page<Integer> page = new PageImpl<>(Arrays.asList(1, 2));
182+
183+
assertThat(page.getSize()).isEqualTo(2);
184+
assertThat(page.getTotalPages()).isEqualTo(1);
185+
assertThat(page.hasPrevious()).isFalse();
186+
assertThat(page.hasNext()).isFalse();
187+
}
177188
}

0 commit comments

Comments
 (0)