diff --git a/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/mapping/MetadataMapping.kt b/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/mapping/MetadataMapping.kt index 9fca233c..f26ee8f3 100644 --- a/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/mapping/MetadataMapping.kt +++ b/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/mapping/MetadataMapping.kt @@ -10,6 +10,10 @@ import java.io.File class MetadataMapping(val events: List) { + var collection: String? + init { + collection = getCollection() + } fun map(): MetadataDto? { @@ -25,7 +29,6 @@ class MetadataMapping(val events: List) { } val videoInfo = mediaReadOut?.toValueObject() - val collection = mediaReadOut?.outDirectory?.let { File(it).name } ?: baseInfo?.title val mediaCover = if (coverDownloadTask != null || cover != null) { @@ -51,12 +54,13 @@ class MetadataMapping(val events: List) { } else null } - fun getCollection(): String? { + private fun getCollection(): String? { + val mediaReadOut = events.find { it.data is VideoInfoPerformed }?.data as VideoInfoPerformed? val baseInfo = events.find { it.data is BaseInfoPerformed }?.data as BaseInfoPerformed? if (!baseInfo.isSuccess()) { return null } - return baseInfo?.title + return mediaReadOut?.outDirectory?.let { File(it).name } ?: baseInfo?.title } } \ No newline at end of file diff --git a/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/mapping/ProcessMapping.kt b/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/mapping/ProcessMapping.kt index d7f304ed..57ef54eb 100644 --- a/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/mapping/ProcessMapping.kt +++ b/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/mapping/ProcessMapping.kt @@ -18,7 +18,7 @@ class ProcessMapping(val events: List) { referenceId = referenceId, process = processStarted?.type, inputFile = processStarted?.file, - collection = meta.getCollection(), + collection = meta.collection, metadata = meta.map(), videoDetails = VideoDetailsMapper(events).mapTo(), outputFiles = OutputFilesMapping(events).mapTo() diff --git a/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/tasks/event/CollectAndStoreTask.kt b/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/tasks/event/CollectAndStoreTask.kt index eeb6afe9..4d89aacc 100644 --- a/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/tasks/event/CollectAndStoreTask.kt +++ b/apps/coordinator/src/main/kotlin/no/iktdev/mediaprocessing/coordinator/tasks/event/CollectAndStoreTask.kt @@ -53,7 +53,7 @@ class CollectAndStoreTask(@Autowired override var coordinator: Coordinator) : Ta return null } val mapped = ProcessMapping(events).map() ?: return null - val collection = mapped.collection ?: return null + val collection = mapped.metadata?.collection ?: mapped.collection ?: return null val subtitlesStored = mapped.outputFiles?.subtitles?.let { storeSubtitles(collection = collection, subtitles = it)