Enable dependency injection for some aai-common classes 23/137223/1
authorFiete Ostkamp <Fiete.Ostkamp@telekom.de>
Thu, 15 Feb 2024 16:10:02 +0000 (17:10 +0100)
committerFiete Ostkamp <Fiete.Ostkamp@telekom.de>
Thu, 15 Feb 2024 16:10:02 +0000 (17:10 +0100)
- minor refactorings in SchemaServiceTranslator
- annotate the other classes with @Component to make them available for dependency injection

Issue-ID: AAI-3780
Signed-off-by: Fiete Ostkamp <Fiete.Ostkamp@telekom.de>
Change-Id: Ia48743b81de36e1da3e71eee8821baa526c86885

aai-schema-ingest/src/main/java/org/onap/aai/setup/SchemaServiceTranslator.java
aai-schema-ingest/src/main/java/org/onap/aai/validation/edges/CousinDefaultingValidationModule.java
aai-schema-ingest/src/main/java/org/onap/aai/validation/edges/DefaultEdgeFieldsValidationModule.java
aai-schema-ingest/src/main/java/org/onap/aai/validation/edges/SingleContainmentValidationModule.java
aai-schema-ingest/src/main/java/org/onap/aai/validation/edges/UniqueLabelValidationModule.java

index 27148a4..680bdd1 100644 (file)
@@ -23,6 +23,7 @@ package org.onap.aai.setup;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -48,15 +49,12 @@ public class SchemaServiceTranslator extends Translator {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(SchemaServiceTranslator.class);
 
-    private static final String SchemaServiceClientType = "schema.service";
-
     @Value("${schema.service.nodes.endpoint}")
     private String nodeSchemaUri;
 
     @Value("${schema.service.edges.endpoint}")
     private String edgeSchemaUri;
 
-    @Qualifier("restClient")
     @Autowired
     private RestClient restClient;
 
@@ -73,21 +71,20 @@ public class SchemaServiceTranslator extends Translator {
     @Override
     public List<InputStream> getVersionNodeStream(SchemaVersion version) throws IOException {
 
-        List<InputStream> inputStreams = new ArrayList<>();
-        String content = "";
-        String uri = nodeSchemaUri + version.toString();
-        Map<String, String> headersMap = new HashMap<>();
-
+        final Map<String, String> headersMap = new HashMap<>();
         headersMap.put(HttpHeaders.ACCEPT, MediaType.APPLICATION_XML.toString());
         headersMap.put(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_XML.toString());
+        final String content = "";
+        final String uri = nodeSchemaUri + version.toString();
         ResponseEntity<Resource> schemaResponse = restClient.getGetResource(content, uri, headersMap);
+
         verifySchemaServiceResponse(schemaResponse.getStatusCode());
         LOGGER.debug("SchemaResponse Status code" + schemaResponse.getStatusCode());
+        
         Resource resultBody = schemaResponse.getBody();
-        if (resultBody != null) {
-            inputStreams.add(resultBody.getInputStream());
-        }
-        return inputStreams;
+        return resultBody != null
+            ? Collections.singletonList(resultBody.getInputStream())
+            : Collections.emptyList();
     }
 
     @Override
@@ -95,16 +92,14 @@ public class SchemaServiceTranslator extends Translator {
         /*
          * Call Schema MS to get versions using RestTemplate
          */
-        List<String> inputStreams = new ArrayList<>();
-        String content = "";
-        String uri = edgeSchemaUri + version.toString();
-        Map<String, String> headersMap = new HashMap<>();
+        final String content = "";
+        final String uri = edgeSchemaUri + version.toString();
+        final Map<String, String> headersMap = new HashMap<>();
 
         ResponseEntity<String> schemaResponse = restClient.getGetRequest(content, uri, headersMap);
         verifySchemaServiceResponse(schemaResponse.getStatusCode());
         LOGGER.debug("SchemaResponse Status code" + schemaResponse.getStatusCode());
-        inputStreams.add(schemaResponse.getBody());
-        return inputStreams;
+        return Collections.singletonList(schemaResponse.getBody());
 
     }
 
index 73337a4..688a6b9 100644 (file)
@@ -28,11 +28,13 @@ import org.onap.aai.edges.EdgeRuleQuery;
 import org.onap.aai.edges.EdgeRuleQuery.Builder;
 import org.onap.aai.edges.enums.EdgeField;
 import org.onap.aai.edges.enums.EdgeType;
+import org.springframework.stereotype.Component;
 
 /**
  * Validates that in the collection of cousin rules between a given node type pair,
  * there is exactly 1 set default=true.
  */
+@Component
 public class CousinDefaultingValidationModule {
 
     /**
index 1229cf4..5d81c60 100644 (file)
@@ -29,12 +29,14 @@ import java.util.Map;
 import java.util.Map.Entry;
 
 import org.onap.aai.edges.enums.EdgeField;
+import org.springframework.stereotype.Component;
 
 /**
  * Default core A&AI edge field validation
  * All fields in EdgeField enum are required EXCEPT description
  *
  */
+@Component
 public class DefaultEdgeFieldsValidationModule implements EdgeFieldsValidationModule {
 
     /*
index 5f6a964..1f18eb6 100644 (file)
@@ -28,12 +28,14 @@ import java.util.Map;
 
 import org.onap.aai.edges.EdgeRuleQuery;
 import org.onap.aai.edges.enums.EdgeType;
+import org.springframework.stereotype.Component;
 
 /**
  * Validates that the given node type pair has at most one containment relationship
  * in their edge rules.
  * 
  */
+@Component
 public class SingleContainmentValidationModule {
 
     /**
index 82dc169..162a11c 100644 (file)
@@ -27,11 +27,13 @@ import java.util.*;
 import org.onap.aai.edges.EdgeRuleQuery;
 import org.onap.aai.edges.EdgeRuleQuery.Builder;
 import org.onap.aai.edges.enums.EdgeField;
+import org.springframework.stereotype.Component;
 
 /**
  * Applies label validation rules
  *
  */
+@Component
 public class UniqueLabelValidationModule {
 
     /**