aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuicommon/db/repositories/BridgeUploadQueueRepository.scala
blob: edef2ebce816f738ea2d4ba7262b378ff636426d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package xyz.driver.pdsuicommon.db.repositories

import xyz.driver.pdsuicommon.concurrent.BridgeUploadQueue
import xyz.driver.pdsuicommon.domain.LongId

import scala.concurrent.Future

trait BridgeUploadQueueRepository extends Repository {

  type EntityT = BridgeUploadQueue.Item
  type IdT = LongId[EntityT]

  def add(draft: EntityT): EntityT

  def getById(id: LongId[EntityT]): Option[EntityT]

  def isCompleted(kind: String, tag: String): Future[Boolean]

  def getOne(kind: String): Future[Option[BridgeUploadQueue.Item]]

  def update(entity: EntityT): EntityT

  def delete(id: IdT): Unit
}