From aa5b35970af967e972edd6ed435d75184b36d4d5 Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer Date: Thu, 27 Jul 2023 23:16:19 +0200 Subject: Code polish for PR * Do not use component creation using annotation on classes since components will be created within AppConfiguration config class * Patient PseudonymizeService intentionally uses prefix. If no prefix is configured, the default value "UNKNOWN" will be used to prevent conflicts with other organizations and to show the source organization. --- src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt | 6 ++++-- src/main/kotlin/dev/dnpm/etl/processor/output/KafkaMtbFileSender.kt | 5 ++--- .../kotlin/dev/dnpm/etl/processor/pseudonym/PseudonymizeService.kt | 5 +---- 3 files changed, 7 insertions(+), 9 deletions(-) (limited to 'src/main/kotlin/dev/dnpm') diff --git a/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt b/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt index 50d848a..c677f2b 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt @@ -24,14 +24,16 @@ import dev.dnpm.etl.processor.monitoring.ReportService import dev.dnpm.etl.processor.output.KafkaMtbFileSender import dev.dnpm.etl.processor.output.MtbFileSender import dev.dnpm.etl.processor.output.RestMtbFileSender -import dev.dnpm.etl.processor.pseudonym.* +import dev.dnpm.etl.processor.pseudonym.AnonymizingGenerator +import dev.dnpm.etl.processor.pseudonym.Generator +import dev.dnpm.etl.processor.pseudonym.GpasPseudonymGenerator +import dev.dnpm.etl.processor.pseudonym.PseudonymizeService import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty import org.springframework.boot.context.properties.EnableConfigurationProperties import org.springframework.context.annotation.Bean import org.springframework.context.annotation.Configuration import org.springframework.kafka.core.KafkaTemplate import reactor.core.publisher.Sinks -import java.net.URI @Configuration @EnableConfigurationProperties( diff --git a/src/main/kotlin/dev/dnpm/etl/processor/output/KafkaMtbFileSender.kt b/src/main/kotlin/dev/dnpm/etl/processor/output/KafkaMtbFileSender.kt index 4bb0206..9867deb 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/output/KafkaMtbFileSender.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/output/KafkaMtbFileSender.kt @@ -23,9 +23,7 @@ import com.fasterxml.jackson.databind.ObjectMapper import de.ukw.ccc.bwhc.dto.MtbFile import org.slf4j.LoggerFactory import org.springframework.kafka.core.KafkaTemplate -import org.springframework.stereotype.Component -@Component class KafkaMtbFileSender( private val kafkaTemplate: KafkaTemplate, private val objectMapper: ObjectMapper @@ -37,7 +35,8 @@ class KafkaMtbFileSender( return try { val result = kafkaTemplate.sendDefault( String.format( - "{\"pid\": \"%s\", \"eid\": \"%s\"}", mtbFile.patient.id, + "{\"pid\": \"%s\", \"eid\": \"%s\"}", + mtbFile.patient.id, mtbFile.episode.id ), objectMapper.writeValueAsString(mtbFile) ) diff --git a/src/main/kotlin/dev/dnpm/etl/processor/pseudonym/PseudonymizeService.kt b/src/main/kotlin/dev/dnpm/etl/processor/pseudonym/PseudonymizeService.kt index 21e0f9a..364e296 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/pseudonym/PseudonymizeService.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/pseudonym/PseudonymizeService.kt @@ -19,7 +19,6 @@ package dev.dnpm.etl.processor.pseudonym -import ca.uhn.fhir.util.StringUtil import de.ukw.ccc.bwhc.dto.MtbFile import dev.dnpm.etl.processor.config.PseudonymizeConfigProperties @@ -29,9 +28,7 @@ class PseudonymizeService( ) { fun pseudonymize(mtbFile: MtbFile): MtbFile { - val patientPseudonym: String = if(configProperties.prefix.isNotEmpty()) - "${configProperties.prefix}_${generator.generate(mtbFile.patient.id)}" - else generator.generate(mtbFile.patient.id) + val patientPseudonym = "${configProperties.prefix}_${generator.generate(mtbFile.patient.id)}" mtbFile.episode.patient = patientPseudonym mtbFile.carePlans.forEach { it.patient = patientPseudonym } -- cgit v1.2.3