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
Branches
Tags v1.2
No related merge requests found
......@@ -44,10 +44,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper {
public FormData adaptFormData(FormData formData) {
var fieldMap = formData.getFormData();
var slotIndex = findSlotIndex(fieldMap);
UnaryOperator<String> getValueOrEmpty = field -> getFieldByKey(
UnaryOperator<String> getValueOrEmpty = field -> getFieldByKeyOrEmpty(
fieldMap,
getNameForSlotIndex(field, slotIndex)
).orElse("");
);
var organisationseinheitId = getValueOrEmpty.apply(ORGANISATIONSEINHEIT_ID_FIELD);
if (organisationseinheitId.isBlank()) {
......@@ -70,12 +70,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper {
int findSlotIndex(Map<String, Object> fieldMap) {
var identifier = environment.getProperty("ozgcloud.xta.identifier");
return IntStream.range(0, 3)
.filter(slotIndex -> getFieldByKey(
.filter(slotIndex -> getFieldByKeyOrEmpty(
fieldMap,
getNameForSlotIndex(ZUSTELLUNG_NACHRICHTENBROKER_FIELD, slotIndex)
)
.map(value -> value.equals(identifier))
.orElse(false)
).equals(identifier)
)
.findFirst()
.orElseThrow(() -> new TechnicalException("No matching nachrichtenbroker address '%s' found!".formatted(identifier)));
......@@ -85,9 +83,10 @@ public class MantelantragFormBasedMapper implements FormBasedMapper {
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))
.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