consumer #2

Merged
usbharu merged 10 commits from consumer into master 2024-04-30 09:26:10 +00:00
1 changed files with 22 additions and 0 deletions
Showing only changes of commit c76f9e36f0 - Show all commits

View File

@ -20,10 +20,32 @@ import dev.usbharu.owl.common.task.PublishedTask
import dev.usbharu.owl.common.task.Task import dev.usbharu.owl.common.task.Task
import dev.usbharu.owl.common.task.TaskDefinition import dev.usbharu.owl.common.task.TaskDefinition
/**
* タスクを発生させるクライアント
*
*/
interface OwlProducer { interface OwlProducer {
/**
* Producerを開始します
*
*/
suspend fun start() suspend fun start()
/**
* タスク定義を登録します
*
* @param T 登録するタスク
* @param taskDefinition 登録するタスクの定義
*/
suspend fun <T : Task> registerTask(taskDefinition: TaskDefinition<T>) suspend fun <T : Task> registerTask(taskDefinition: TaskDefinition<T>)
/**
* タスクを公開しますタスクは定義済みである必要があります
*
* @param T 公開するタスク
* @param task タスクの詳細
* @return 公開されたタスク
*/
suspend fun <T : Task> publishTask(task: T): PublishedTask<T> suspend fun <T : Task> publishTask(task: T): PublishedTask<T>
} }