Java 17 Upgrade
[policy/models.git] / models-tosca / src / main / java / org / onap / policy / models / tosca / utils / ToscaServiceTemplateUtils.java
index 3626536..1f6056f 100644 (file)
@@ -1,6 +1,6 @@
 /*-
  * ============LICENSE_START=======================================================
- * Copyright (C) 2020 Nordix Foundation.
+ * Copyright (C) 2020, 2022-2023 Nordix Foundation.
  * Modifications Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
 
 package org.onap.policy.models.tosca.utils;
 
+import jakarta.ws.rs.core.Response;
 import java.util.Map.Entry;
-import javax.ws.rs.core.Response;
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
 import lombok.NonNull;
 import org.onap.policy.common.parameters.BeanValidationResult;
 import org.onap.policy.models.base.PfConceptContainer;
@@ -37,13 +39,8 @@ import org.onap.policy.models.tosca.simple.concepts.JpaToscaTopologyTemplate;
 /**
  * This utility class provides methods to manage service templates.
  */
-public class ToscaServiceTemplateUtils {
-    /**
-     * Private constructor to prevent subclassing.
-     */
-    private ToscaServiceTemplateUtils() {
-        // Private constructor to prevent subclassing
-    }
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public final class ToscaServiceTemplateUtils {
 
     /**
      * Add a service template fragment to a service template. All entities in the service template fragment must either
@@ -70,6 +67,8 @@ public class ToscaServiceTemplateUtils {
                 addFragmentEntitites(compositeTemplate.getDataTypes(), fragmentTemplate.getDataTypes(), result));
         compositeTemplate.setPolicyTypes(
                 addFragmentEntitites(compositeTemplate.getPolicyTypes(), fragmentTemplate.getPolicyTypes(), result));
+        compositeTemplate.setNodeTypes(
+                addFragmentEntitites(compositeTemplate.getNodeTypes(), fragmentTemplate.getNodeTypes(), result));
 
         if (originalTemplate.getTopologyTemplate() != null && fragmentTemplate.getTopologyTemplate() != null) {
             if (originalTemplate.getTopologyTemplate()
@@ -77,6 +76,9 @@ public class ToscaServiceTemplateUtils {
                 compositeTemplate.getTopologyTemplate()
                         .setPolicies(addFragmentEntitites(compositeTemplate.getTopologyTemplate().getPolicies(),
                                 fragmentTemplate.getTopologyTemplate().getPolicies(), result));
+                compositeTemplate.getTopologyTemplate()
+                    .setNodeTemplates(addFragmentEntitites(compositeTemplate.getTopologyTemplate().getNodeTemplates(),
+                        fragmentTemplate.getTopologyTemplate().getNodeTemplates(), result));
             } else {
                 Validated.addResult(result, "topology template",
                                 originalTemplate.getTopologyTemplate().getKey(),