This commit is contained in:
Brage Skjønborg 2026-01-31 23:46:46 +01:00
parent ec20ff0b02
commit 7cc7679746
2 changed files with 18 additions and 0 deletions

View File

@ -1,19 +1,31 @@
package no.iktdev.mediaprocessing.coordinator.listeners.events package no.iktdev.mediaprocessing.coordinator.listeners.events
import mu.KotlinLogging
import no.iktdev.eventi.events.EventListener import no.iktdev.eventi.events.EventListener
import no.iktdev.eventi.models.Event import no.iktdev.eventi.models.Event
import no.iktdev.eventi.models.store.TaskStatus
import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.CompletedEvent import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.CompletedEvent
import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.MigrateContentToStoreTaskResultEvent
import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.StoreContentAndMetadataTaskResultEvent import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.StoreContentAndMetadataTaskResultEvent
import no.iktdev.mediaprocessing.shared.common.getName
import org.springframework.stereotype.Component import org.springframework.stereotype.Component
@Component @Component
class CompletedListener: EventListener() { class CompletedListener: EventListener() {
val log = KotlinLogging.logger {}
override fun onEvent( override fun onEvent(
event: Event, event: Event,
history: List<Event> history: List<Event>
): Event? { ): Event? {
if (event !is StoreContentAndMetadataTaskResultEvent) if (event !is StoreContentAndMetadataTaskResultEvent)
return null return null
val useEvent = event as StoreContentAndMetadataTaskResultEvent
if (useEvent.status != TaskStatus.Completed) {
log.info { "${useEvent.referenceId} - ${MigrateContentToStoreTaskResultEvent::class.getName()} is failed, thus no task will be created" }
return null
}
return CompletedEvent().derivedOf(event) return CompletedEvent().derivedOf(event)
} }
} }

View File

@ -3,11 +3,13 @@ package no.iktdev.mediaprocessing.coordinator.listeners.events
import mu.KotlinLogging import mu.KotlinLogging
import no.iktdev.eventi.events.EventListener import no.iktdev.eventi.events.EventListener
import no.iktdev.eventi.models.Event import no.iktdev.eventi.models.Event
import no.iktdev.eventi.models.store.TaskStatus
import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.CollectedEvent import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.CollectedEvent
import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.ManualAllowCompletionEvent import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.ManualAllowCompletionEvent
import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.MigrateContentToStoreTaskResultEvent import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.MigrateContentToStoreTaskResultEvent
import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.StoreContentAndMetadataTaskCreatedEvent import no.iktdev.mediaprocessing.shared.common.event_task_contract.events.StoreContentAndMetadataTaskCreatedEvent
import no.iktdev.mediaprocessing.shared.common.event_task_contract.tasks.StoreContentAndMetadataTask import no.iktdev.mediaprocessing.shared.common.event_task_contract.tasks.StoreContentAndMetadataTask
import no.iktdev.mediaprocessing.shared.common.getName
import no.iktdev.mediaprocessing.shared.common.model.ContentExport import no.iktdev.mediaprocessing.shared.common.model.ContentExport
import no.iktdev.mediaprocessing.shared.common.projection.CollectProjection import no.iktdev.mediaprocessing.shared.common.projection.CollectProjection
import no.iktdev.mediaprocessing.shared.common.projection.StoreProjection import no.iktdev.mediaprocessing.shared.common.projection.StoreProjection
@ -49,6 +51,10 @@ class StoreContentAndMetadataListener: EventListener() {
log.error { "Metadata is null @ ${useEvent.referenceId}"} log.error { "Metadata is null @ ${useEvent.referenceId}"}
return null return null
} }
if (useEvent.status != TaskStatus.Completed) {
log.info { "${useEvent.referenceId} - ${MigrateContentToStoreTaskResultEvent::class.getName()} is failed, thus no task will be created" }
return null
}
if (!CollectProjection(history).isStorePermitted()) { if (!CollectProjection(history).isStorePermitted()) {
log.info { "\uD83D\uDED1 Not storing content and metadata automatically for collection: $collection @ ${useEvent.referenceId}" } log.info { "\uD83D\uDED1 Not storing content and metadata automatically for collection: $collection @ ${useEvent.referenceId}" }