Skip to content
Snippets Groups Projects
Commit 54cd297e authored by OZGCloud's avatar OZGCloud
Browse files

OZG-5156 Accept FIM messages in XTA adapter

hand over representations to new formdata in fim mapper
parent 094c113c
No related branches found
No related tags found
No related merge requests found
package de.ozgcloud.eingang.fim;
import de.ozgcloud.eingang.common.formdata.FormData;
import de.ozgcloud.eingang.common.formdata.IncomingFile;
import de.ozgcloud.eingang.common.formdata.IncomingFileGroup;
import lombok.extern.log4j.Log4j2;
import org.apache.commons.lang3.function.TriFunction;
......@@ -11,25 +12,23 @@ import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.w3c.dom.Text;
import java.util.Collection;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Optional;
import java.util.*;
@Service
@Log4j2
class FimDataMapper implements TriFunction<Document, FimScheme, Collection<IncomingFileGroup>, FormData.FormDataBuilder> {
class FimDataMapper implements TriFunction<Document, FimScheme, FormData, FormData.FormDataBuilder> {
private static final String LABEL_KEY = "label";
private static final String VALUE_KEY = "value";
@Override
public FormData.FormDataBuilder apply(final Document document, final FimScheme fimScheme, final Collection<IncomingFileGroup> attachments) {
public FormData.FormDataBuilder apply(final Document document, final FimScheme fimScheme, final FormData initialFormData) {
final FormData.FormDataBuilder formDataBuilder = FormData.builder();
Map<String, Object> data = new LinkedHashMap<>();
process(document.getDocumentElement(), fimScheme, data, 0);
formDataBuilder.formData(data);
formDataBuilder.attachments(attachments);
formDataBuilder.attachments(initialFormData.getAttachments());
formDataBuilder.representations(initialFormData.getRepresentations());
return formDataBuilder;
}
......
......@@ -14,7 +14,6 @@ import org.xml.sax.SAXException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
......@@ -82,7 +81,7 @@ public class FimService {
throw new FimException("XML Document does not provide a scheme");
}
final FimScheme scheme = getSchemeForIdentifier(schemeName);
final FormData.FormDataBuilder builder = fimDataMapper.apply(document, scheme, initialFormData.getAttachments());
final FormData.FormDataBuilder builder = fimDataMapper.apply(document, scheme, initialFormData);
final FimSchemeAdapter adapter = scheme.getSchemeAdapter();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment