aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/queue/ApiQueueUploadItem.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/queue/ApiQueueUploadItem.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/queue/ApiQueueUploadItem.scala38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/queue/ApiQueueUploadItem.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/queue/ApiQueueUploadItem.scala
new file mode 100644
index 0000000..cd76670
--- /dev/null
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/queue/ApiQueueUploadItem.scala
@@ -0,0 +1,38 @@
+package xyz.driver.pdsuidomain.formats.json.queue
+
+import java.time.LocalDateTime
+
+import xyz.driver.pdsuicommon.concurrent.BridgeUploadQueue
+import play.api.libs.json.{Format, Json}
+
+final case class ApiQueueUploadItem(kind: String,
+ tag: String,
+ created: LocalDateTime,
+ attempts: Int,
+ nextAttempt: LocalDateTime,
+ completed: Boolean) {
+ def toDomain = BridgeUploadQueue.Item(
+ kind = kind,
+ tag = tag,
+ created = created,
+ attempts = attempts,
+ nextAttempt = nextAttempt,
+ completed = true,
+ dependencyKind = None,
+ dependencyTag = None
+ )
+}
+
+object ApiQueueUploadItem {
+
+ def fromDomain(domain: BridgeUploadQueue.Item) = ApiQueueUploadItem(
+ kind = domain.kind,
+ tag = domain.tag,
+ created = domain.created,
+ attempts = domain.attempts,
+ nextAttempt = domain.nextAttempt,
+ completed = domain.completed
+ )
+
+ implicit val format: Format[ApiQueueUploadItem] = Json.format[ApiQueueUploadItem]
+}