From 29e8530fdd4de3a609771bfcd1b33d17b215af34 Mon Sep 17 00:00:00 2001 From: "Zickermann, Jan" <jan.zickermann@dataport.de> Date: Mon, 13 May 2024 14:44:26 +0200 Subject: [PATCH] OZG-5412 mantelantrag: Split up large method --- .../MantelantragFormBasedMapper.java | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragFormBasedMapper.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragFormBasedMapper.java index 27fb3cd14..0c10729d0 100644 --- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragFormBasedMapper.java +++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragFormBasedMapper.java @@ -5,7 +5,6 @@ import java.util.Optional; import java.util.function.UnaryOperator; import java.util.stream.IntStream; -import de.ozgcloud.eingang.semantik.formbased.FormBasedMapper; import org.apache.commons.collections.MapUtils; import org.springframework.core.env.Environment; import org.springframework.stereotype.Component; @@ -13,6 +12,7 @@ import org.springframework.stereotype.Component; import de.ozgcloud.eingang.common.errorhandling.TechnicalException; import de.ozgcloud.eingang.common.formdata.FormData; import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle; +import de.ozgcloud.eingang.semantik.formbased.FormBasedMapper; import lombok.RequiredArgsConstructor; import lombok.extern.log4j.Log4j2; @@ -53,19 +53,16 @@ public class MantelantragFormBasedMapper implements FormBasedMapper { FormData adaptFormDataWithPossibleException(FormData formData) { var fieldMap = formData.getFormData(); var slotIndex = findSlotIndex(fieldMap); - UnaryOperator<String> getValueOrEmpty = field -> getFieldByKeyOrEmpty( + return adaptFormDataWithValueGetter(formData, field -> getFieldByKeyOrEmpty( fieldMap, getNameForSlotIndex(field, slotIndex) - ); - var organisationseinheitId = getValueOrEmpty.apply(ORGANISATIONSEINHEIT_ID_FIELD); - - if (organisationseinheitId.isBlank()) { - throw new TechnicalException("OrganistaionseinheitId not found!"); - } + )); + } + private FormData adaptFormDataWithValueGetter(FormData formData, UnaryOperator<String> getValueOrEmpty) { return formData.toBuilder() .zustaendigeStelle(ZustaendigeStelle.builder() - .organisationseinheitenId(organisationseinheitId) + .organisationseinheitenId(getOrganisationseinheitId(getValueOrEmpty)) .bezeichnung(getValueOrEmpty.apply(BEZEICHNUNG_FIELD)) .email(getValueOrEmpty.apply(EMAIL_FIELD)) .hausanschriftStrasse(getValueOrEmpty.apply(HAUSANSCHRIFT_STRASSE_FIELD)) @@ -76,6 +73,16 @@ public class MantelantragFormBasedMapper implements FormBasedMapper { .build(); } + private String getOrganisationseinheitId(UnaryOperator<String> getValueOrEmpty) { + var organisationseinheitId = getValueOrEmpty.apply(ORGANISATIONSEINHEIT_ID_FIELD); + + if (organisationseinheitId.isBlank()) { + throw new TechnicalException("OrganistaionseinheitId not found!"); + } + + return organisationseinheitId; + } + int findSlotIndex(Map<String, Object> fieldMap) { var identifier = environment.getProperty("ozgcloud.xta.identifier"); return IntStream.range(0, 3) -- GitLab