Merge "Do not log filter to error log"
authorLiam Fallon <liam.fallon@est.tech>
Fri, 15 Jan 2021 18:14:08 +0000 (18:14 +0000)
committerGerrit Code Review <gerrit@onap.org>
Fri, 15 Jan 2021 18:14:08 +0000 (18:14 +0000)
models-tosca/src/main/java/org/onap/policy/models/tosca/authorative/concepts/ToscaNodeTemplate.java
models-tosca/src/main/java/org/onap/policy/models/tosca/simple/concepts/JpaToscaProperty.java
models-tosca/src/main/java/org/onap/policy/models/tosca/simple/concepts/JpaToscaTrigger.java
models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/concepts/ToscaNodeTemplateTest.java [new file with mode: 0644]

index 343eb8e..d470447 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START=======================================================
  * ONAP Policy Model
  * ================================================================================
- * Copyright (C) 2020 Nordix Foundation.
+ * Copyright (C) 2020-2021 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 package org.onap.policy.models.tosca.authorative.concepts;
 
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
+import lombok.NonNull;
 
 @Data
 @EqualsAndHashCode(callSuper = true)
@@ -36,4 +39,19 @@ public class ToscaNodeTemplate extends ToscaEntity {
     private Map<String, Object> properties;
     private List<Map<String, ToscaRequirement>> requirements;
     private Map<String, ToscaCapabilityAssignment> capabilities;
+
+    /**
+     * Copy constructor.
+     *
+     * @param copyObject the obejct to copy from.
+     */
+    public ToscaNodeTemplate(@NonNull ToscaNodeTemplate copyObject) {
+        super(copyObject);
+
+        this.type = copyObject.type;
+
+        this.properties = (copyObject.properties != null ? new LinkedHashMap<>(copyObject.properties) : null);
+        this.requirements = (copyObject.requirements != null ? new ArrayList<>(copyObject.requirements) : null);
+        this.capabilities = (copyObject.capabilities != null ? new LinkedHashMap<>(copyObject.capabilities) : null);
+    }
 }
index 4420639..cd29616 100644 (file)
@@ -3,7 +3,7 @@
  * ONAP Policy Model
  * ================================================================================
  * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
- * Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ * Modifications Copyright (C) 2019-2021 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -83,7 +83,7 @@ public class JpaToscaProperty extends PfConcept implements PfAuthorative<ToscaPr
     @Column
     private boolean required = false;
 
-    @Column(name = "default")
+    @Column
     @NotBlank
     private String defaultValue;
 
index 677354d..546ea07 100644 (file)
@@ -3,7 +3,7 @@
  * ONAP Policy Model
  * ================================================================================
  * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
- * Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ * Modifications Copyright (C) 2019-2021 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -84,11 +84,11 @@ public class JpaToscaTrigger extends PfConcept {
     @Valid
     private JpaToscaEventFilter targetFilter;
 
-    @Column
+    @Column(name = "toscaCondition")
     @Valid
     private JpaToscaConstraint condition;
 
-    @Column
+    @Column(name = "toscaConstraint")
     @Valid
     private JpaToscaConstraint constraint;
 
diff --git a/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/concepts/ToscaNodeTemplateTest.java b/models-tosca/src/test/java/org/onap/policy/models/tosca/authorative/concepts/ToscaNodeTemplateTest.java
new file mode 100644 (file)
index 0000000..5cfc864
--- /dev/null
@@ -0,0 +1,50 @@
+/*
+ * ============LICENSE_START=======================================================
+ * ONAP Policy Models
+ * ================================================================================
+ * Copyright (C) 2021 Nordix Foundation.
+ * ================================================================================
+ * 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.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.models.tosca.authorative.concepts;
+
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import org.junit.Test;
+
+public class ToscaNodeTemplateTest {
+
+    @Test
+    public void testToscaNodeTemplate() {
+        assertThatThrownBy(() -> {
+            new ToscaNodeTemplate(null);
+        }).hasMessageMatching("copyObject is marked .*on.*ull but is null");
+
+        assertNotNull(new ToscaNodeTemplate(new ToscaNodeTemplate()));
+
+        ToscaNodeTemplate origNt = new ToscaNodeTemplate();
+
+        assertEquals(origNt, new ToscaNodeTemplate(origNt));
+
+        origNt.setProperties(new HashMap<>());
+        origNt.setCapabilities(new HashMap<>());
+        origNt.setRequirements(new ArrayList<>());
+        assertEquals(origNt, new ToscaNodeTemplate(origNt));
+    }
+}