Skip to content
Snippets Groups Projects
Commit b314ea13 authored by Jan Zickermann's avatar Jan Zickermann
Browse files

OZG-5415 mantelantrag: Cleanup mapper

parent 4e5ae6e1
No related branches found
No related tags found
No related merge requests found
...@@ -44,10 +44,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper { ...@@ -44,10 +44,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper {
public FormData adaptFormData(FormData formData) { public FormData adaptFormData(FormData formData) {
var fieldMap = formData.getFormData(); var fieldMap = formData.getFormData();
var slotIndex = findSlotIndex(fieldMap); var slotIndex = findSlotIndex(fieldMap);
UnaryOperator<String> getValueOrEmpty = field -> getFieldByKey( UnaryOperator<String> getValueOrEmpty = field -> getFieldByKeyOrEmpty(
fieldMap, fieldMap,
getNameForSlotIndex(field, slotIndex) getNameForSlotIndex(field, slotIndex)
).orElse(""); );
var organisationseinheitId = getValueOrEmpty.apply(ORGANISATIONSEINHEIT_ID_FIELD); var organisationseinheitId = getValueOrEmpty.apply(ORGANISATIONSEINHEIT_ID_FIELD);
if (organisationseinheitId.isBlank()) { if (organisationseinheitId.isBlank()) {
...@@ -70,12 +70,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper { ...@@ -70,12 +70,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper {
int findSlotIndex(Map<String, Object> fieldMap) { int findSlotIndex(Map<String, Object> fieldMap) {
var identifier = environment.getProperty("ozgcloud.xta.identifier"); var identifier = environment.getProperty("ozgcloud.xta.identifier");
return IntStream.range(0, 3) return IntStream.range(0, 3)
.filter(slotIndex -> getFieldByKey( .filter(slotIndex -> getFieldByKeyOrEmpty(
fieldMap, fieldMap,
getNameForSlotIndex(ZUSTELLUNG_NACHRICHTENBROKER_FIELD, slotIndex) getNameForSlotIndex(ZUSTELLUNG_NACHRICHTENBROKER_FIELD, slotIndex)
) ).equals(identifier)
.map(value -> value.equals(identifier))
.orElse(false)
) )
.findFirst() .findFirst()
.orElseThrow(() -> new TechnicalException("No matching nachrichtenbroker address '%s' found!".formatted(identifier))); .orElseThrow(() -> new TechnicalException("No matching nachrichtenbroker address '%s' found!".formatted(identifier)));
...@@ -85,9 +83,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper { ...@@ -85,9 +83,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper {
return slotIndex > 0 ? "%s%d".formatted(name, slotIndex + 1) : name; return slotIndex > 0 ? "%s%d".formatted(name, slotIndex + 1) : name;
} }
private Optional<String> getFieldByKey(Map<String, Object> fieldMap, String key) { private String getFieldByKeyOrEmpty(Map<String, Object> fieldMap, String key) {
return Optional.ofNullable(MapUtils.getString(fieldMap, key)) return Optional.ofNullable(MapUtils.getString(fieldMap, key))
.map(String::trim); .map(String::trim)
.orElse("");
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment