Skip to content

Commit 5780ef7

Browse files
committed
update samples
1 parent 42bd4e1 commit 5780ef7

10 files changed

Lines changed: 130 additions & 6 deletions

File tree

samples/server/petstore/kotlin-springboot-paged-model/.openapi-generator/FILES

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ src/main/kotlin/org/openapitools/api/OrderApi.kt
1212
src/main/kotlin/org/openapitools/api/PetApi.kt
1313
src/main/kotlin/org/openapitools/api/UserApi.kt
1414
src/main/kotlin/org/openapitools/configuration/EnumConverterConfiguration.kt
15+
src/main/kotlin/org/openapitools/configuration/PagedModel.kt
1516
src/main/kotlin/org/openapitools/model/Order.kt
1617
src/main/kotlin/org/openapitools/model/PageMeta.kt
1718
src/main/kotlin/org/openapitools/model/Pet.kt

samples/server/petstore/kotlin-springboot-paged-model/src/main/kotlin/org/openapitools/api/OrderApi.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
package org.openapitools.api
77

88
import org.openapitools.model.Order
9-
import org.springframework.data.web.PagedModel
9+
import org.openapitools.configuration.PagedModel
1010
import org.springframework.http.HttpStatus
1111
import org.springframework.http.MediaType
1212
import org.springframework.http.ResponseEntity

samples/server/petstore/kotlin-springboot-paged-model/src/main/kotlin/org/openapitools/api/PetApi.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66
package org.openapitools.api
77

8-
import org.springframework.data.web.PagedModel
8+
import org.openapitools.configuration.PagedModel
99
import org.openapitools.model.Pet
1010
import org.openapitools.model.SearchResult
1111
import org.springframework.http.HttpStatus

samples/server/petstore/kotlin-springboot-paged-model/src/main/kotlin/org/openapitools/api/UserApi.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66
package org.openapitools.api
77

8-
import org.springframework.data.web.PagedModel
8+
import org.openapitools.configuration.PagedModel
99
import org.openapitools.model.User
1010
import org.openapitools.model.UserList
1111
import org.springframework.http.HttpStatus
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package org.openapitools.configuration
2+
3+
/**
4+
* Simple generic paged response wrapper generated by openapi-generator.
5+
*
6+
* Holds a page of content items and pagination metadata. Jackson deserializes this from the
7+
* standard Spring `Page` JSON shape:
8+
* ```json
9+
* {
10+
* "content": [...],
11+
* "page": { "size": 20, "totalElements": 100, "totalPages": 5, "number": 0 }
12+
* }
13+
* ```
14+
*
15+
* To use your own class instead, set `importMappings.PagedModel` in the generator config.
16+
*/
17+
data class PagedModel<T>(
18+
val content: List<T>,
19+
val page: PageMetadata,
20+
) {
21+
data class PageMetadata(
22+
val size: Long,
23+
val totalElements: Long,
24+
val totalPages: Long,
25+
val number: Long,
26+
)
27+
}

samples/server/petstore/springboot-paged-model/.openapi-generator/FILES

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ src/main/java/org/openapitools/api/OrderApi.java
55
src/main/java/org/openapitools/api/PetApi.java
66
src/main/java/org/openapitools/api/UserApi.java
77
src/main/java/org/openapitools/configuration/EnumConverterConfiguration.java
8+
src/main/java/org/openapitools/configuration/PagedModel.java
89
src/main/java/org/openapitools/model/Order.java
910
src/main/java/org/openapitools/model/PageMeta.java
1011
src/main/java/org/openapitools/model/Pet.java

samples/server/petstore/springboot-paged-model/src/main/java/org/openapitools/api/OrderApi.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
import org.springframework.lang.Nullable;
99
import org.openapitools.model.Order;
10-
import org.springframework.data.web.PagedModel;
10+
import org.openapitools.configuration.PagedModel;
1111
import org.springframework.http.ResponseEntity;
1212
import org.springframework.validation.annotation.Validated;
1313
import org.springframework.web.bind.annotation.*;

samples/server/petstore/springboot-paged-model/src/main/java/org/openapitools/api/PetApi.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
package org.openapitools.api;
77

88
import org.springframework.lang.Nullable;
9-
import org.springframework.data.web.PagedModel;
9+
import org.openapitools.configuration.PagedModel;
1010
import org.openapitools.model.Pet;
1111
import org.openapitools.model.SearchResult;
1212
import org.springframework.http.ResponseEntity;

samples/server/petstore/springboot-paged-model/src/main/java/org/openapitools/api/UserApi.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
package org.openapitools.api;
77

88
import org.springframework.lang.Nullable;
9-
import org.springframework.data.web.PagedModel;
9+
import org.openapitools.configuration.PagedModel;
1010
import org.openapitools.model.User;
1111
import org.openapitools.model.UserList;
1212
import org.springframework.http.ResponseEntity;
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
package org.openapitools.configuration;
2+
3+
import java.util.List;
4+
5+
/**
6+
* Simple generic paged response wrapper generated by openapi-generator.
7+
*
8+
* <p>Holds a page of content items and pagination metadata. Jackson deserializes this from the
9+
* standard Spring {@code Page} JSON shape:
10+
* <pre>
11+
* {
12+
* "content": [...],
13+
* "page": { "size": 20, "totalElements": 100, "totalPages": 5, "number": 0 }
14+
* }
15+
* </pre>
16+
*
17+
* <p>To use your own class instead, set {@code importMappings.PagedModel} in the generator config.
18+
*/
19+
public class PagedModel<T> {
20+
21+
private List<T> content;
22+
private PageMetadata page;
23+
24+
public PagedModel() {}
25+
26+
public PagedModel(List<T> content, PageMetadata page) {
27+
this.content = content;
28+
this.page = page;
29+
}
30+
31+
public List<T> getContent() {
32+
return content;
33+
}
34+
35+
public void setContent(List<T> content) {
36+
this.content = content;
37+
}
38+
39+
public PageMetadata getPage() {
40+
return page;
41+
}
42+
43+
public void setPage(PageMetadata page) {
44+
this.page = page;
45+
}
46+
47+
public static class PageMetadata {
48+
49+
private long size;
50+
private long totalElements;
51+
private long totalPages;
52+
private long number;
53+
54+
public PageMetadata() {}
55+
56+
public PageMetadata(long size, long totalElements, long totalPages, long number) {
57+
this.size = size;
58+
this.totalElements = totalElements;
59+
this.totalPages = totalPages;
60+
this.number = number;
61+
}
62+
63+
public long getSize() {
64+
return size;
65+
}
66+
67+
public void setSize(long size) {
68+
this.size = size;
69+
}
70+
71+
public long getTotalElements() {
72+
return totalElements;
73+
}
74+
75+
public void setTotalElements(long totalElements) {
76+
this.totalElements = totalElements;
77+
}
78+
79+
public long getTotalPages() {
80+
return totalPages;
81+
}
82+
83+
public void setTotalPages(long totalPages) {
84+
this.totalPages = totalPages;
85+
}
86+
87+
public long getNumber() {
88+
return number;
89+
}
90+
91+
public void setNumber(long number) {
92+
this.number = number;
93+
}
94+
}
95+
}

0 commit comments

Comments
 (0)