aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/common/db/repositories/BridgeUploadQueueRepository.scala
blob: e0d6ff297945b45c6d68a0348f533bd888ebefc7 (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.common.db.repositories

import xyz.driver.common.concurrent.BridgeUploadQueue
import xyz.driver.common.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
}