summaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib
diff options
context:
space:
mode:
authortalio <tali.orenbach@amdocs.com>2017-11-16 10:05:26 +0200
committertalio <tali.orenbach@amdocs.com>2017-11-16 12:36:29 +0200
commit3e54d3de51fa86255ca5059c59fd68aea0f59488 (patch)
tree41af165b793657a9f9ddc0506e1c9017dabfee6c /openecomp-be/lib
parent5d0f52a1833aa44bb740f6ca6152cdb3846691a7 (diff)
nova server validator
fixed validation of nova server name value inside env file Issue - Id : SDC-670 Change-Id: If407a2c1f601b4b724c50c1994fd056b569588ac Signed-off-by: talio <tali.orenbach@amdocs.com>
Diffstat (limited to 'openecomp-be/lib')
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java16
2 files changed, 28 insertions, 10 deletions
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java
index d4b6a88ba9..54b071f651 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java
@@ -21,6 +21,7 @@
package org.openecomp.sdc.heat.datatypes;
import org.apache.commons.lang.math.NumberUtils;
+import org.apache.commons.lang3.ClassUtils;
import java.util.HashMap;
import java.util.List;
@@ -72,14 +73,13 @@ public enum DefinedHeatParameterTypes {
return HeatBoolean.isValueBoolean(value);
case COMMA_DELIMITED_LIST:
- String valAsString = String.valueOf(value);
- return valAsString.split(",") instanceof String[];
+ return isValueCommaDelimitedList(value);
case JSON:
- return (value instanceof Map) || (value instanceof List);
+ return isValueJson(value);
case STRING:
- return true;
+ return isValueString(value);
default:
}
}
@@ -92,6 +92,20 @@ public enum DefinedHeatParameterTypes {
|| isValueIsFromGivenType(value, STRING.getType());
}
+ private static boolean isValueCommaDelimitedList(Object value) {
+ return String.valueOf(value).contains(",")
+ || isValueIsFromGivenType(value, DefinedHeatParameterTypes.STRING.type);
+ }
+
+ private static boolean isValueString(Object value) {
+ return value instanceof String
+ || ClassUtils.isPrimitiveOrWrapper(value.getClass());
+ }
+
+ private static boolean isValueJson(Object value) {
+ return (value instanceof Map) || (value instanceof List);
+ }
+
public static boolean isEmptyValueInEnv(Object value) {
return Objects.isNull(value);
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java
index 299eabf4e5..0a7ff879fd 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java
@@ -389,7 +389,7 @@ public class NovaServerNamingConventionGuideLineValidator implements ResourceVal
if (nonNull(novaNameGetParam)) {
novaName =
checkNovaNameGetParamValueMap(fileName, novaNameGetParam, resourceEntry, globalContext);
- checkIfNovaNameParameterInEnvIsStringOrList(fileName, envFileName, resourceEntry, novaName,
+ checkIfNovaNameParameterInEnvIsStringOrList(fileName, envFileName, novaName, resourceEntry,
globalContext);
} else {
globalContext.addMessage(
@@ -457,7 +457,7 @@ public class NovaServerNamingConventionGuideLineValidator implements ResourceVal
if (getParamValue instanceof List) {
List<Object> getParamNameList = (List) getParamValue;
String[] regexName = new String[]{".*_names"};
- return isNovaNameAsListLegal(fileName, getParamNameList, regexName, resourceEntry,
+ return isNovaNameAsListLegal(fileName, regexName, getParamNameList, resourceEntry,
globalContext);
} else if (getParamValue instanceof String) {
String[] regexName = new String[]{".*_name_(\\d+)"};
@@ -468,9 +468,10 @@ public class NovaServerNamingConventionGuideLineValidator implements ResourceVal
return null;
}
- private void checkIfNovaNameParameterInEnvIsStringOrList(String fileName, String envFileName,
- Map.Entry<String, Resource> resourceEntry,
+ private void checkIfNovaNameParameterInEnvIsStringOrList(String fileName,
+ String envFileName,
String novaServerName,
+ Map.Entry<String, Resource> resourceEntry,
GlobalValidationContext globalContext) {
if (nonNull(envFileName)) {
Environment environment = ValidationUtil.validateEnvContent(envFileName, globalContext);
@@ -495,8 +496,9 @@ public class NovaServerNamingConventionGuideLineValidator implements ResourceVal
}
}
- private String isNovaNameAsListLegal(String fileName, List<Object> getParamNameList,
+ private String isNovaNameAsListLegal(String fileName,
String[] regexName,
+ List<Object> getParamNameList,
Map.Entry<String, Resource> resourceEntry,
GlobalValidationContext globalContext) {
@@ -516,7 +518,9 @@ public class NovaServerNamingConventionGuideLineValidator implements ResourceVal
return (String) getParamNameList.get(0);
}
- private String isNovaNameAsStringLegal(String fileName, String novaName, String[] regexName,
+ private String isNovaNameAsStringLegal(String fileName,
+ String novaName,
+ String[] regexName,
Map.Entry<String, Resource> resourceEntry,
GlobalValidationContext globalContext) {
if (!ValidationUtil.evalPattern(novaName, regexName)) {