Fix static list value issue 69/89369/4
authortalio <tali.orenbach@amdocs.com>
Wed, 5 Jun 2019 13:11:11 +0000 (16:11 +0300)
committerAvi Gaffa <avi.gaffa@amdocs.com>
Thu, 6 Jun 2019 08:43:50 +0000 (08:43 +0000)
Change-Id: I976404e172aae756248cb4e3fe367e1c00c72168
Issue-ID: SDC-2355
Signed-off-by: talio <tali.orenbach@amdocs.com>
catalog-be/pom.xml
catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ServiceBusinessLogic.java
catalog-be/src/main/java/org/openecomp/sdc/be/datamodel/utils/PropertyValueConstraintValidationUtil.java
catalog-model/src/main/java/org/openecomp/sdc/be/model/DataTypeDefinition.java

index e32d514..dcd4c58 100644 (file)
             <artifactId>jackson-mapper-asl</artifactId>
             <version>${jackson.mapper.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-collections4</artifactId>
+            <version>${commons.collections.version}</version>
+        </dependency>
     </dependencies>
 
     <build>
index a586e23..cad9a92 100644 (file)
@@ -700,6 +700,7 @@ public class ServiceBusinessLogic extends ComponentBusinessLogic {
                } else {
                        PropertyDefinition propertyDefinition = new PropertyDefinition();
                        propertyDefinition.setType(operationInputDefinition.getType());
+                       propertyDefinition.setSchema(operationInputDefinition.getSchema());
                        propertyDefinition.setValue(value);
                        propertyDefinition.setName(operationInputDefinition.getName());
 
index 073e469..72342e6 100644 (file)
@@ -106,13 +106,13 @@ public class PropertyValueConstraintValidationUtil {
             if (Objects.nonNull(propertyDefinition)) {
                                if (ToscaType.isPrimitiveType(propertyDefinition.getType())) {
                                        propertyDefinition.setConstraints(
-                                                       org.openecomp.sdc.be.dao.utils.CollectionUtils.merge(propertyDefinition.getConstraints(),
-                                                                       dataTypeDefinitionCache.get(propertyDefinition.getType()).getConstraints()));
+                                                       org.openecomp.sdc.be.dao.utils.CollectionUtils.merge(propertyDefinition.safeGetConstraints(),
+                                                                       dataTypeDefinitionCache.get(propertyDefinition.getType()).safeGetConstraints()));
                                        evaluateConstraintsOnProperty(propertyDefinition);
                                } else if (ToscaType.isCollectionType(propertyDefinition.getType())) {
                                        propertyDefinition.setConstraints(
-                                                       org.openecomp.sdc.be.dao.utils.CollectionUtils.merge(propertyDefinition.getConstraints(),
-                                                                       dataTypeDefinitionCache.get(propertyDefinition.getType()).getConstraints()));
+                                                       org.openecomp.sdc.be.dao.utils.CollectionUtils.merge(propertyDefinition.safeGetConstraints(),
+                                                                       dataTypeDefinitionCache.get(propertyDefinition.getType()).safeGetConstraints()));
                                        evaluateConstraintsOnProperty(propertyDefinition);
                                        evaluateCollectionTypeProperties(propertyDefinition);
                                } else {
index 4dc952d..a54e326 100644 (file)
@@ -20,6 +20,7 @@
 
 package org.openecomp.sdc.be.model;
 
+import org.openecomp.sdc.be.dao.utils.CollectionUtils;
 import org.openecomp.sdc.be.datatypes.elements.DataTypeDataDefinition;
 import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition;
 
@@ -55,6 +56,10 @@ public class DataTypeDefinition extends DataTypeDataDefinition {
         return constraints;
     }
 
+    public List<PropertyConstraint> safeGetConstraints() {
+        return CollectionUtils.safeGetList(constraints);
+    }
+
     public void setConstraints(List<PropertyConstraint> constraints) {
         this.constraints = constraints;
     }