From c76f9e36f0652d385d305ef4ebe396e398f638ca Mon Sep 17 00:00:00 2001 From: usbharu Date: Mon, 22 Apr 2024 10:58:44 +0900 Subject: [PATCH] =?UTF-8?q?doc:=20OwlProducer=E3=81=AE=E3=83=89=E3=82=AD?= =?UTF-8?q?=E3=83=A5=E3=83=A1=E3=83=B3=E3=83=88=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../usbharu/owl/producer/api/OwlProducer.kt | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/producer/api/src/main/kotlin/dev/usbharu/owl/producer/api/OwlProducer.kt b/producer/api/src/main/kotlin/dev/usbharu/owl/producer/api/OwlProducer.kt index b15d1d2..2149589 100644 --- a/producer/api/src/main/kotlin/dev/usbharu/owl/producer/api/OwlProducer.kt +++ b/producer/api/src/main/kotlin/dev/usbharu/owl/producer/api/OwlProducer.kt @@ -20,10 +20,32 @@ import dev.usbharu.owl.common.task.PublishedTask import dev.usbharu.owl.common.task.Task import dev.usbharu.owl.common.task.TaskDefinition +/** + * タスクを発生させるクライアント + * + */ interface OwlProducer { + /** + * Producerを開始します + * + */ suspend fun start() + /** + * タスク定義を登録します + * + * @param T 登録するタスク + * @param taskDefinition 登録するタスクの定義 + */ suspend fun registerTask(taskDefinition: TaskDefinition) + + /** + * タスクを公開します。タスクは定義済みである必要があります。 + * + * @param T 公開するタスク + * @param task タスクの詳細 + * @return 公開されたタスク + */ suspend fun publishTask(task: T): PublishedTask }