From 9b5320fed51cba5b1744bac14fc217959ca7db0f Mon Sep 17 00:00:00 2001
From: Jan Zickermann <jan.zickermann@dataport.de>
Date: Mon, 25 Nov 2024 15:46:25 +0100
Subject: [PATCH] #4 OZG-7112 swagger: Fix code generation

---
 pom.xml                       | 16 +++++++++++++++
 spec/postfach-api-facade.yaml | 38 +++++------------------------------
 2 files changed, 21 insertions(+), 33 deletions(-)

diff --git a/pom.xml b/pom.xml
index a03dac2..1f5aff3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,6 +21,8 @@
 		<nachrichten-manager.version>2.14.0</nachrichten-manager.version>
 		<mockserver-client.version>5.15.0</mockserver-client.version>
 		<openapi-generator.version>7.10.0</openapi-generator.version>
+		<swagger-parser.version>2.1.23</swagger-parser.version>
+		<jackson-databind-nullable.version>0.2.1</jackson-databind-nullable.version>
 	</properties>
 	<dependencies>
 		<!-- OZG-Cloud -->
@@ -53,6 +55,17 @@
 			<artifactId>mapstruct</artifactId>
 		</dependency>
 
+		<dependency>
+			<groupId>org.openapitools</groupId>
+			<artifactId>jackson-databind-nullable</artifactId>
+			<version>${jackson-databind-nullable.version}</version>
+		</dependency>
+		<dependency>
+			<groupId>io.swagger.parser.v3</groupId>
+			<artifactId>swagger-parser</artifactId>
+			<version>${swagger-parser.version}</version>
+		</dependency>
+
 		<!-- test -->
 		<dependency>
 			<groupId>de.ozgcloud.api-lib</groupId>
@@ -140,6 +153,9 @@
 							<generatorName>java</generatorName>
 							<configOptions>
 								<sourceFolder>src/gen/java/main</sourceFolder>
+								<serializationLibrary>jackson</serializationLibrary>
+								<library>webclient</library>
+								<annotationLibrary>swagger2</annotationLibrary>
 							</configOptions>
 						</configuration>
 					</execution>
diff --git a/spec/postfach-api-facade.yaml b/spec/postfach-api-facade.yaml
index a9227d5..5355a6b 100644
--- a/spec/postfach-api-facade.yaml
+++ b/spec/postfach-api-facade.yaml
@@ -3,7 +3,7 @@ info:
   title: Postfach API Facade
   description: <h3>Zentraler Service zur Nutzung der Plattformdienste des <i>Plattformdienstteams
     Postfach</i></h3>siehe auch <a href=https://docs.osi.dataport.de/x/VgO8Bw>PF-Facade</a>
-  version: 1.0
+  version: '1.0'
 servers:
 - url: /facade
 paths:
@@ -2735,26 +2735,9 @@ paths:
                   description: Liste der als Anhänge zu sendenden Dateien.
             example: 24b91411-34e0-4ad2-aedb-ef9726cfe8aa
             encoding:
-              Body:
-                style: form
-              Subject:
-                style: form
-              EidasLevel:
-                style: form
-              IsHtml:
-                style: form
-              IsObligatory:
-                style: form
-              SequenceNumber:
-                style: form
-              ReplyAction:
-                style: form
-              DisplayName:
-                style: form
-              OriginSender:
-                style: form
-              References:
+              sendRequest:
                 style: form
+                explode: true
               fileList:
                 style: form
       responses:
@@ -3619,20 +3602,9 @@ paths:
                   format: binary
             example: 24b91411-34e0-4ad2-aedb-ef9726cfe8aa
             encoding:
-              UploadUid:
-                style: form
-              FileName:
-                style: form
-              ContentType:
-                style: form
-              ChunkIndex:
-                style: form
-              TotalChunks:
-                style: form
-              TotalFileSize:
-                style: form
-              Target:
+              metadata:
                 style: form
+                explode: true
               tenant:
                 style: form
               nameIdentifier:
-- 
GitLab