aboutsummaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java')
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java178
1 files changed, 91 insertions, 87 deletions
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java
index 0cbc71fcb6..7c8e48ac88 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java
@@ -7,9 +7,9 @@
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -20,11 +20,6 @@
package org.openecomp.sdc.tosca.services;
-import org.apache.commons.collections4.MapUtils;
-import org.onap.sdc.tosca.datatypes.model.NodeTemplate;
-import org.onap.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.core.utilities.file.FileUtils;
-
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -32,102 +27,111 @@ import java.util.Objects;
import java.util.Optional;
import java.util.UUID;
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+import org.apache.commons.collections4.MapUtils;
+import org.onap.sdc.tosca.datatypes.model.NodeTemplate;
+import org.onap.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.core.utilities.file.FileUtils;
+
/**
* The type Tosca util.
*/
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class ToscaUtil {
- /**
- * Gets service template file name.
- *
- * @param serviceTemplate the service template
- * @return the service template file name
- */
- public static String getServiceTemplateFileName(ServiceTemplate serviceTemplate) {
- if (serviceTemplate == null) {
- return null;
+ /**
+ * Gets service template file name.
+ *
+ * @param serviceTemplate the service template
+ * @return the service template file name
+ */
+ public static String getServiceTemplateFileName(ServiceTemplate serviceTemplate) {
+ if (serviceTemplate == null) {
+ return null;
+ }
+ if (serviceTemplate.getMetadata() == null) {
+ return UUID.randomUUID().toString() + ToscaConstants.SERVICE_TEMPLATE_FILE_POSTFIX;
+ }
+ return getServiceTemplateFileName(serviceTemplate.getMetadata());
}
- if (serviceTemplate.getMetadata() == null) {
- return UUID.randomUUID().toString() + "ServiceTemplate.yaml";
+
+ /**
+ * Gets service template file name.
+ *
+ * @param metadata the file name
+ * @return the service template file name
+ */
+ public static String getServiceTemplateFileName(Map<String, String> metadata) {
+ if (metadata.get(ToscaConstants.ST_METADATA_FILE_NAME) != null) {
+ return metadata.get(ToscaConstants.ST_METADATA_FILE_NAME);
+ } else if (metadata.get(ToscaConstants.ST_METADATA_TEMPLATE_NAME) != null) {
+ return metadata.get(ToscaConstants.ST_METADATA_TEMPLATE_NAME)
+ + ToscaConstants.SERVICE_TEMPLATE_FILE_POSTFIX;
+ }
+ return UUID.randomUUID().toString() + ToscaConstants.SERVICE_TEMPLATE_FILE_POSTFIX;
+
}
- return getServiceTemplateFileName(serviceTemplate.getMetadata());
- }
-
- /**
- * Gets service template file name.
- *
- * @param metadata the file name
- * @return the service template file name
- */
- public static String getServiceTemplateFileName(Map<String, String> metadata) {
- if (metadata.get(ToscaConstants.ST_METADATA_FILE_NAME) != null) {
- return metadata.get(ToscaConstants.ST_METADATA_FILE_NAME);
- } else if (metadata.get(ToscaConstants.ST_METADATA_TEMPLATE_NAME) != null) {
- return metadata.get(ToscaConstants.ST_METADATA_TEMPLATE_NAME) + "ServiceTemplate.yaml";
+
+ public static String getServiceTemplateFileName(String templateName) {
+ Map<String, String> metadata = new HashMap<>();
+ metadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, templateName);
+ return getServiceTemplateFileName(metadata);
}
- return UUID.randomUUID().toString() + "ServiceTemplate.yaml";
- }
+ public static Optional<String> getSubstitutableGroupMemberId(String heatFileName,
+ ServiceTemplate serviceTemplate) {
+
+ Map<String, NodeTemplate> nodeTemplates =
+ DataModelUtil.getNodeTemplates(serviceTemplate);
+
+ if (MapUtils.isEmpty(nodeTemplates)) {
+ return Optional.empty();
+ }
- public static Optional<String> getSubstitutableGroupMemberId(String heatFileName,
- ServiceTemplate serviceTemplate){
+ String heatFileNameWithoutExt = FileUtils.getFileWithoutExtention(heatFileName);
- Map<String, NodeTemplate> nodeTemplates =
- DataModelUtil.getNodeTemplates(serviceTemplate);
+ for (Map.Entry<String, NodeTemplate> nodeTemplateEntry : nodeTemplates.entrySet()) {
+ String subServiceTemplateName =
+ getSubstitutionServiceTemplateNameFromProperties(nodeTemplateEntry);
- if(MapUtils.isEmpty(nodeTemplates)){
- return Optional.empty();
+ if (Objects.nonNull(subServiceTemplateName)
+ && isGroupMemberIdSubstitutable(heatFileNameWithoutExt, subServiceTemplateName)) {
+ return Optional.of(nodeTemplateEntry.getKey());
+ }
+ }
+
+ return Optional.empty();
+ }
+
+ private static boolean isGroupMemberIdSubstitutable(String heatFileNameWithoutExt,
+ String subServiceTemplateName) {
+ return subServiceTemplateName.startsWith(heatFileNameWithoutExt);
}
- String heatFileNameWithoutExt = FileUtils.getFileWithoutExtention(heatFileName);
+ private static String getSubstitutionServiceTemplateNameFromProperties(
+ Map.Entry<String, NodeTemplate> nodeTemplateEntry) {
+ Map<String, Object> properties =
+ nodeTemplateEntry.getValue().getProperties() == null ? Collections.emptyMap() :
+ nodeTemplateEntry.getValue().getProperties();
- for(Map.Entry<String, NodeTemplate> nodeTemplateEntry : nodeTemplates.entrySet()){
- String subServiceTemplateName =
- getSubstitutionServiceTemplateNameFromProperties(nodeTemplateEntry);
+ Map<String, Object> serviceTemplateFilter =
+ properties.containsKey(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME) ?
+ (Map<String, Object>) properties.get(ToscaConstants
+ .SERVICE_TEMPLATE_FILTER_PROPERTY_NAME) : Collections.emptyMap();
- if(Objects.nonNull(subServiceTemplateName)
- && isGroupMemberIdSubstitutable(heatFileNameWithoutExt, subServiceTemplateName)){
- return Optional.of(nodeTemplateEntry.getKey());
- }
+ return (String) serviceTemplateFilter.get(ToscaConstants.SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME);
}
- return Optional.empty();
- }
-
- private static boolean isGroupMemberIdSubstitutable(String heatFileNameWithoutExt,
- String subServiceTemplateName) {
- return subServiceTemplateName.startsWith(heatFileNameWithoutExt);
- }
-
- private static String getSubstitutionServiceTemplateNameFromProperties(
- Map.Entry<String, NodeTemplate> nodeTemplateEntry) {
- Map<String, Object> properties =
- nodeTemplateEntry.getValue().getProperties() == null ? Collections.emptyMap() :
- nodeTemplateEntry.getValue().getProperties();
-
- Map<String, Object> serviceTemplateFilter =
- properties.containsKey(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME)?
- (Map<String, Object>) properties.get(ToscaConstants
- .SERVICE_TEMPLATE_FILTER_PROPERTY_NAME) : Collections.emptyMap();
-
- return (String) serviceTemplateFilter.get(ToscaConstants.SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME);
- }
-
-
- /**
- * Add service template to map with key file name.
- *
- * @param serviceTemplateMap the service template map
- * @param serviceTemplate the service template
- */
- public static void addServiceTemplateToMapWithKeyFileName(
- Map<String, ServiceTemplate> serviceTemplateMap, ServiceTemplate serviceTemplate) {
- serviceTemplateMap.put(ToscaUtil.getServiceTemplateFileName(serviceTemplate), serviceTemplate);
- }
-
- public static String getServiceTemplateFileName(String templateName) {
- Map<String, String> metadata = new HashMap<>();
- metadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, templateName);
- return getServiceTemplateFileName(metadata);
- }
+
+ /**
+ * Add service template to map with key file name.
+ *
+ * @param serviceTemplateMap the service template map
+ * @param serviceTemplate the service template
+ */
+ public static void addServiceTemplateToMapWithKeyFileName(
+ Map<String, ServiceTemplate> serviceTemplateMap, ServiceTemplate serviceTemplate) {
+ serviceTemplateMap.put(ToscaUtil.getServiceTemplateFileName(serviceTemplate), serviceTemplate);
+ }
}