diff --git a/alfa-xdomea/src/main/java/de/ozgcloud/xdomea/XDomeaService.java b/alfa-xdomea/src/main/java/de/ozgcloud/xdomea/XDomeaService.java index aff6e587e7ed209d972d0664b14f68768b528264..5cc88680d4f6b006de80d9f8ef608fbae7714ed9 100644 --- a/alfa-xdomea/src/main/java/de/ozgcloud/xdomea/XDomeaService.java +++ b/alfa-xdomea/src/main/java/de/ozgcloud/xdomea/XDomeaService.java @@ -1,4 +1,35 @@ package de.ozgcloud.xdomea; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +import org.springframework.stereotype.Service; + +import de.itvsh.kop.common.errorhandling.TechnicalException; + +@Service class XDomeaService { + + public ByteArrayOutputStream createVorgangExport() { + ByteArrayOutputStream outputBytes = new ByteArrayOutputStream(); + try (ZipOutputStream zipOutputStream = new ZipOutputStream(outputBytes)) { + + putZipEntry("fake_file.txt", "data", zipOutputStream); + + } catch (IOException ioe) { + throw new TechnicalException("Error creating zip file with Vorgang export", ioe); + } + + return outputBytes; + } + + private void putZipEntry(String fileName, String fileData, ZipOutputStream zipOutputStream) throws IOException { + ZipEntry entry = new ZipEntry(fileName); + zipOutputStream.putNextEntry(entry); + zipOutputStream.write(fileData.getBytes()); + zipOutputStream.closeEntry(); + } + } diff --git a/alfa-xdomea/src/test/java/de/ozgcloud/xdomea/XDomeaServiceTest.java b/alfa-xdomea/src/test/java/de/ozgcloud/xdomea/XDomeaServiceTest.java index be7ef5852bea1f06c7cddc9ea86978e158b6c9ff..99312919ce01e9a884115f6a0aefbc14d09aede4 100644 --- a/alfa-xdomea/src/test/java/de/ozgcloud/xdomea/XDomeaServiceTest.java +++ b/alfa-xdomea/src/test/java/de/ozgcloud/xdomea/XDomeaServiceTest.java @@ -1,5 +1,25 @@ package de.ozgcloud.xdomea; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + class XDomeaServiceTest { + private XDomeaService service = new XDomeaService(); + + @Nested + class TestCreateVorgangExport { + + @Test + void shouldCreate() { + var zipBytesStream = service.createVorgangExport(); + + assertThat(zipBytesStream).isNotNull(); + assertThat(zipBytesStream.toByteArray()).hasSizeGreaterThan(100); + } + + } + } \ No newline at end of file