aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/ListResponse.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/ListResponse.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/ListResponse.scala24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/ListResponse.scala b/src/main/scala/xyz/driver/pdsuidomain/ListResponse.scala
new file mode 100644
index 0000000..c6dce7b
--- /dev/null
+++ b/src/main/scala/xyz/driver/pdsuidomain/ListResponse.scala
@@ -0,0 +1,24 @@
+package xyz.driver.pdsuidomain
+
+import java.time.LocalDateTime
+
+import xyz.driver.pdsuicommon.db.Pagination
+
+final case class ListResponse[+T](items: Seq[T], meta: ListResponse.Meta)
+
+object ListResponse {
+
+ final case class Meta(itemsCount: Int, pageNumber: Int, pageSize: Int, lastUpdate: Option[LocalDateTime])
+
+ object Meta {
+ def apply(itemsCount: Int, pagination: Pagination, lastUpdate: Option[LocalDateTime]): Meta = {
+ Meta(
+ itemsCount,
+ pagination.pageNumber,
+ pagination.pageSize,
+ lastUpdate
+ )
+ }
+ }
+
+}