@@ -13,7 +13,7 @@ public class PageRequest extends org.springframework.data.domain.PageRequest {
1313 private final org .springframework .data .domain .PageRequest pageRequest ;
1414
1515 public PageRequest (int current , int pageSize , Sort sort ) {
16- super (current , pageSize , sort );
16+ super (current > 0 ? current --: 0 , pageSize , sort );
1717 this .current = current ;
1818 this .pageSize = pageSize ;
1919 this .pageRequest = PageRequest .of (current , pageSize , sort );
@@ -23,32 +23,12 @@ public PageRequest() {
2323 this (0 , 20 , Sort .unsorted ());
2424 }
2525
26- public static org .springframework .data .domain .PageRequest of (int page , int size ) {
27- return org .springframework .data .domain .PageRequest .of (page , size );
28- }
29-
30- public static org .springframework .data .domain .PageRequest of (int page , int size , Sort sort ) {
31- return org .springframework .data .domain .PageRequest .of (page , size , sort );
32- }
33-
34- public static org .springframework .data .domain .PageRequest of (int page , int size , Sort .Direction direction , String ... properties ) {
35- return org .springframework .data .domain .PageRequest .of (page , size , direction , properties );
36- }
37-
38- public static org .springframework .data .domain .PageRequest ofSize (int pageSize ) {
39- return org .springframework .data .domain .PageRequest .ofSize (pageSize );
40- }
41-
42- public static Pageable unpaged () {
43- return Pageable .unpaged ();
44- }
45-
4626 public int getCurrent () {
4727 return current ;
4828 }
4929
5030 public void setCurrent (int current ) {
51- this .current = current ;
31+ this .current = current > 0 ? current - 1 : 0 ;
5232 }
5333
5434 @ Override
@@ -67,62 +47,32 @@ public Sort getSort() {
6747
6848 @ Override
6949 public org .springframework .data .domain .PageRequest next () {
70- return pageRequest . next ( );
50+ return new PageRequest ( current + 1 , getPageSize (), getSort () );
7151 }
7252
7353 @ Override
7454 public org .springframework .data .domain .PageRequest previous () {
75- return pageRequest . previous ( );
55+ return current == 0 ? this : new PageRequest ( current - 1 , getPageSize (), getSort () );
7656 }
7757
7858 @ Override
7959 public org .springframework .data .domain .PageRequest first () {
80- return pageRequest .first ();
81- }
82-
83- @ Override
84- public boolean equals (Object obj ) {
85- return pageRequest .equals (obj );
86- }
87-
88- @ Override
89- public org .springframework .data .domain .PageRequest withPage (int pageNumber ) {
90- return pageRequest .withPage (pageNumber );
91- }
92-
93- @ Override
94- public org .springframework .data .domain .PageRequest withSort (Sort .Direction direction , String ... properties ) {
95- return pageRequest .withSort (direction , properties );
96- }
97-
98- @ Override
99- public org .springframework .data .domain .PageRequest withSort (Sort sort ) {
100- return pageRequest .withSort (sort );
101- }
102-
103- @ Override
104- public int hashCode () {
105- return pageRequest .hashCode ();
106- }
107-
108- @ Override
109- public String toString () {
110- return pageRequest .toString ();
60+ return new PageRequest (0 , getPageSize (), getSort ());
11161 }
11262
11363 @ Override
11464 public int getPageNumber () {
115- return pageRequest . getPageNumber () ;
65+ return current ;
11666 }
11767
11868 @ Override
11969 public long getOffset () {
120- return pageRequest . getOffset () ;
70+ return ( long ) current * ( long ) pageSize ;
12171 }
12272
12373 @ Override
12474 public boolean hasPrevious () {
125- return pageRequest . hasPrevious () ;
75+ return current > 0 ;
12676 }
12777
12878 @ Override
0 commit comments