Skip to content
Snippets Groups Projects
Commit 607c48ed authored by OZGCloud's avatar OZGCloud
Browse files

OZG-4456 use spring default xml mapper

parent 75a46170
Branches
Tags
No related merge requests found
......@@ -25,6 +25,9 @@ package de.ozgcloud.eingang;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import de.ozgcloud.eingang.semantik.enginebased.EngineBasedSemantikAdapter;
import de.ozgcloud.eingang.semantik.enginebased.afm.AfmEngineBasedAdapter;
......@@ -36,4 +39,9 @@ public class SemantikAdapterConfiguration {
public EngineBasedSemantikAdapter engineBasedSemantikAdapter() {
return new AfmEngineBasedAdapter();
}
@Bean
public XmlMapper xmlMapper(MappingJackson2XmlHttpMessageConverter messageConverter) {
return (XmlMapper) messageConverter.getObjectMapper();
}
}
\ No newline at end of file
package de.ozgcloud.eingang.semantik.enginebased.afm;
import static de.ozgcloud.eingang.semantik.enginebased.afm.ZustaendigeStelleMetadataMapper.*;
import static org.assertj.core.api.Assertions.*;
import java.io.File;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import de.itvsh.kop.common.test.ITCase;
import de.itvsh.kop.common.test.TestUtils;
import de.ozgcloud.eingang.common.formdata.IncomingFile;
import de.ozgcloud.eingang.common.formdata.IncomingFileTestFactory;
import lombok.SneakyThrows;
@ITCase
class ZustaendigeStelleMetadataMapperITCase {
@Autowired
private ZustaendigeStelleMetadataMapper mapper;
private IncomingFile behoerdeMetadataXml;
@SneakyThrows
@BeforeEach
void setUp() {
behoerdeMetadataXml = IncomingFileTestFactory.createBuilder()
.name(ZustaendigeStelleMetadataMapper.BEHOERDE_METADATA_FILE_NAME)
.file(new File(TestUtils.class.getClassLoader().getResource(BEHOERDE_METADATA_FILE_NAME).toURI())).build();
}
@Test
void shouldReadXmlNodes() {
var metadata = mapper.readXmlContent(behoerdeMetadataXml);
assertThat(metadata).get().extracting("fields").asList().usingRecursiveFieldByFieldElementComparator()
.containsAll(ZustaendigeStelleDataTestFactory.ZUSTAENDIGE_STELLE_DATA_FIELDS);
}
@SneakyThrows
@Test
void shouldCatchException() {
var zustaendigeStelleData = mapper.readXmlContent(IncomingFileTestFactory.createBuilder().file(new File("broken-file")).build());
assertThat(zustaendigeStelleData).isEmpty();
}
}
@Configuration
class TestConfiguration {
@Bean
public XmlMapper xmlMapper(MappingJackson2XmlHttpMessageConverter messageConverter) {
return (XmlMapper) messageConverter.getObjectMapper();
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment