From fa7f85429e0fe8924d37e715a4c51631872fc2d6 Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Wed, 26 Jun 2024 12:05:50 +0200
Subject: [PATCH] OZG-5156 Added configuration java doc

* removed adapter package
---
 .../{adapter => }/AntragstellerExtractor.java |  2 +-
 .../ozgcloud/eingang/fim/FimBasedMapper.java  |  2 +-
 .../de/ozgcloud/eingang/fim/FimConfig.java    | 18 -------------
 .../ozgcloud/eingang/fim/FimProperties.java   | 25 +++++++++++++++++++
 .../de/ozgcloud/eingang/fim/FimScheme.java    |  1 -
 .../fim/{adapter => }/FimSchemeAdapter.java   |  3 +--
 .../fim/FimSchemeAdapterCatalogue.java        |  2 --
 .../de/ozgcloud/eingang/fim/FimService.java   |  5 ++--
 .../{adapter => }/UnknownSchemeAdapter.java   |  4 +--
 .../ZustaendigeStelleExtractor.java           |  2 +-
 .../eingang/fim/TestNonStandardAdapter.java   |  1 -
 11 files changed, 32 insertions(+), 33 deletions(-)
 rename fim-adapter/src/main/java/de/ozgcloud/eingang/fim/{adapter => }/AntragstellerExtractor.java (83%)
 delete mode 100644 fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimConfig.java
 create mode 100644 fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimProperties.java
 rename fim-adapter/src/main/java/de/ozgcloud/eingang/fim/{adapter => }/FimSchemeAdapter.java (93%)
 rename fim-adapter/src/main/java/de/ozgcloud/eingang/fim/{adapter => }/UnknownSchemeAdapter.java (78%)
 rename fim-adapter/src/main/java/de/ozgcloud/eingang/fim/{adapter => }/ZustaendigeStelleExtractor.java (84%)

diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/AntragstellerExtractor.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/AntragstellerExtractor.java
similarity index 83%
rename from fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/AntragstellerExtractor.java
rename to fim-adapter/src/main/java/de/ozgcloud/eingang/fim/AntragstellerExtractor.java
index fa19e1bbf..5b4d631b4 100644
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/AntragstellerExtractor.java
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/AntragstellerExtractor.java
@@ -1,4 +1,4 @@
-package de.ozgcloud.eingang.fim.adapter;
+package de.ozgcloud.eingang.fim;
 
 import de.ozgcloud.eingang.common.formdata.FormData;
 
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimBasedMapper.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimBasedMapper.java
index 09412d607..90ec29b65 100644
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimBasedMapper.java
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimBasedMapper.java
@@ -23,7 +23,7 @@ import java.util.Optional;
 class FimBasedMapper implements EngineBasedMapper {
 
     @Autowired
-    private FimService fimService = null;
+    private FimService fimService;
 
     public boolean isResponsible(final FormData formData) {
         //FIXME isResponsible from meta data
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimConfig.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimConfig.java
deleted file mode 100644
index ebe019d57..000000000
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimConfig.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package de.ozgcloud.eingang.fim;
-
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.boot.context.properties.EnableConfigurationProperties;
-import org.springframework.context.annotation.Configuration;
-import lombok.Getter;
-
-import java.util.ArrayList;
-import java.util.List;
-
-@Configuration
-@EnableConfigurationProperties
-@ConfigurationProperties(prefix = "fim")
-@Getter
-public class FimConfig {
-
-    private final List<String> schemeLocations = new ArrayList<>();
-}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimProperties.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimProperties.java
new file mode 100644
index 000000000..df67ec1a3
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimProperties.java
@@ -0,0 +1,25 @@
+package de.ozgcloud.eingang.fim;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Configuration;
+import lombok.Getter;
+import org.springframework.validation.annotation.Validated;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Validated
+@Configuration
+@ConfigurationProperties(prefix = FimProperties.PROPERTIES_PREFIX)
+@Getter
+public class FimProperties {
+    static final String PROPERTIES_PREFIX = "fim";
+
+    /**
+     * List of paths to fim scheme files which should be processed by the fim-adapter.
+     *
+     * Only fim data that is in the namespace and versions of these files will be mapped by the fim-adapter.
+     * All other fim data will be left untouched by the mapper.
+     */
+    private final List<String> schemeLocations = new ArrayList<>();
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimScheme.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimScheme.java
index e1dd10f4e..e38bd99ba 100644
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimScheme.java
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimScheme.java
@@ -1,6 +1,5 @@
 package de.ozgcloud.eingang.fim;
 
-import de.ozgcloud.eingang.fim.adapter.FimSchemeAdapter;
 import lombok.Getter;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/FimSchemeAdapter.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeAdapter.java
similarity index 93%
rename from fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/FimSchemeAdapter.java
rename to fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeAdapter.java
index 6ea4356b1..4166b2365 100644
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/FimSchemeAdapter.java
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeAdapter.java
@@ -1,6 +1,5 @@
-package de.ozgcloud.eingang.fim.adapter;
+package de.ozgcloud.eingang.fim;
 
-import de.ozgcloud.eingang.fim.FimSchemeIdentifier;
 import lombok.extern.log4j.Log4j2;
 import org.w3c.dom.Element;
 import org.w3c.dom.NodeList;
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeAdapterCatalogue.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeAdapterCatalogue.java
index 3b178d3a6..934f3f8af 100644
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeAdapterCatalogue.java
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeAdapterCatalogue.java
@@ -1,7 +1,5 @@
 package de.ozgcloud.eingang.fim;
 
-import de.ozgcloud.eingang.fim.adapter.FimSchemeAdapter;
-
 import java.util.LinkedHashMap;
 class FimSchemeAdapterCatalogue extends LinkedHashMap<FimSchemeIdentifier, FimSchemeAdapter> {
 }
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimService.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimService.java
index 144f6615d..b451d9521 100644
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimService.java
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimService.java
@@ -1,7 +1,6 @@
 package de.ozgcloud.eingang.fim;
 
 import de.ozgcloud.eingang.common.formdata.FormData;
-import de.ozgcloud.eingang.fim.adapter.FimSchemeAdapter;
 import io.micrometer.common.util.StringUtils;
 import jakarta.annotation.PostConstruct;
 import lombok.extern.log4j.Log4j2;
@@ -24,7 +23,7 @@ public class FimService {
     public static final String UNKNOWN_SCHEME_NAME = "unknown";
 
     @Autowired
-    private FimConfig fimConfig;
+    private FimProperties fimProperties;
 
     @Autowired
     private FimDataMapper fimDataMapper;
@@ -45,7 +44,7 @@ public class FimService {
         for (final FimSchemeAdapter fimSchemeAdapter : fimSchemeAdapters) {
             fimSchemeAdapterCatalogue.put(fimSchemeAdapter.forIdentifier(), fimSchemeAdapter);
         }
-        for (final String fimSchemaLocation : fimConfig.getSchemeLocations()) {
+        for (final String fimSchemaLocation : fimProperties.getSchemeLocations()) {
             final FimScheme fimScheme = loadFimScheme(fimSchemaLocation.trim());
             fimSchemeCatalogue.put(fimScheme.getIdentifier(), fimScheme);
         }
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/UnknownSchemeAdapter.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/UnknownSchemeAdapter.java
similarity index 78%
rename from fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/UnknownSchemeAdapter.java
rename to fim-adapter/src/main/java/de/ozgcloud/eingang/fim/UnknownSchemeAdapter.java
index a4539ef08..5015cc5a7 100644
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/UnknownSchemeAdapter.java
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/UnknownSchemeAdapter.java
@@ -1,7 +1,5 @@
-package de.ozgcloud.eingang.fim.adapter;
+package de.ozgcloud.eingang.fim;
 
-import de.ozgcloud.eingang.fim.FimSchemeIdentifier;
-import de.ozgcloud.eingang.fim.FimService;
 import org.springframework.stereotype.Service;
 import org.w3c.dom.Element;
 
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/ZustaendigeStelleExtractor.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/ZustaendigeStelleExtractor.java
similarity index 84%
rename from fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/ZustaendigeStelleExtractor.java
rename to fim-adapter/src/main/java/de/ozgcloud/eingang/fim/ZustaendigeStelleExtractor.java
index e8d3446af..a77d15956 100644
--- a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/ZustaendigeStelleExtractor.java
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/ZustaendigeStelleExtractor.java
@@ -1,4 +1,4 @@
-package de.ozgcloud.eingang.fim.adapter;
+package de.ozgcloud.eingang.fim;
 
 import de.ozgcloud.eingang.common.formdata.FormData;
 
diff --git a/fim-adapter/src/test/java/de/ozgcloud/eingang/fim/TestNonStandardAdapter.java b/fim-adapter/src/test/java/de/ozgcloud/eingang/fim/TestNonStandardAdapter.java
index c2da20f91..76b10a4ca 100644
--- a/fim-adapter/src/test/java/de/ozgcloud/eingang/fim/TestNonStandardAdapter.java
+++ b/fim-adapter/src/test/java/de/ozgcloud/eingang/fim/TestNonStandardAdapter.java
@@ -1,6 +1,5 @@
 package de.ozgcloud.eingang.fim;
 
-import de.ozgcloud.eingang.fim.adapter.FimSchemeAdapter;
 import org.springframework.stereotype.Service;
 import org.w3c.dom.Element;
 import org.w3c.dom.NodeList;
-- 
GitLab