summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandre.schmid <andre.schmid@est.tech>2020-05-25 14:54:30 +0100
committerOfir Sonsino <ofir.sonsino@intl.att.com>2020-06-02 08:36:40 +0000
commit64ff2b9fa9eca541603a8e2f2bd08bf24de25338 (patch)
tree63859337280a49bc5717f60ba7185a64b416412e
parentb6dc72ad96d5194fb7529ac39ec239ff92e3e7a2 (diff)
Add constraints structure to ToscaProperty
Add constraints structure to ToscaProperty and implements the valid_values property. Change-Id: Id69581582839a8937f0c76c24d6a6bfcc7f0a957 Issue-ID: SDC-3084 Signed-off-by: andre.schmid <andre.schmid@est.tech>
-rw-r--r--catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaProperty.java69
-rw-r--r--catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaPropertyConstraint.java31
-rw-r--r--catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaPropertyConstraintValidValues.java56
3 files changed, 109 insertions, 47 deletions
diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaProperty.java b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaProperty.java
index 812cb4cbe2..fd3696eb2a 100644
--- a/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaProperty.java
+++ b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaProperty.java
@@ -20,43 +20,42 @@
package org.openecomp.sdc.be.tosca.model;
-public class ToscaProperty {
+import java.util.List;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+@NoArgsConstructor
+public class ToscaProperty {
private Object _defaultp_;
+ @Getter
+ @Setter
private String type;
+ @Getter
+ @Setter
private String description;
+ @Getter
+ @Setter
private Boolean required;
+ @Getter
+ @Setter
private EntrySchema entry_schema;
+ @Getter
+ @Setter
+ private List<ToscaPropertyConstraint> constraints;
+ @Getter
+ @Setter
+ private String status;
- public ToscaProperty(ToscaProperty toscaProperty) {
+ public ToscaProperty(final ToscaProperty toscaProperty) {
this.type = toscaProperty.type;
this._defaultp_ = toscaProperty._defaultp_;
this.description = toscaProperty.description;
this.required = toscaProperty.required;
this.entry_schema = toscaProperty.entry_schema;
this.status = toscaProperty.status;
- }
-
- private String status;
-
- public EntrySchema getEntry_schema() {
- return entry_schema;
- }
-
- public void setEntry_schema(EntrySchema entry_schema) {
- this.entry_schema = entry_schema;
- }
-
- public ToscaProperty() {
- }
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
+ this.constraints = toscaProperty.constraints;
}
public Object getDefaultp() {
@@ -67,28 +66,4 @@ public class ToscaProperty {
this._defaultp_ = defaultp;
}
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Boolean getRequired() {
- return required;
- }
-
- public void setRequired(Boolean required) {
- this.required = required;
- }
-
- public String getStatus() {
- return status;
- }
-
- public void setStatus(String status) {
- this.status = status;
- }
-
}
diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaPropertyConstraint.java b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaPropertyConstraint.java
new file mode 100644
index 0000000000..2faceb3bb1
--- /dev/null
+++ b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaPropertyConstraint.java
@@ -0,0 +1,31 @@
+/*
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2020 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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.be.tosca.model;
+
+import org.openecomp.sdc.be.model.tosca.constraints.ConstraintType;
+
+/**
+ * Represents a Tosca Property Constraint
+ */
+public interface ToscaPropertyConstraint {
+
+ ConstraintType getConstraintType();
+
+}
diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaPropertyConstraintValidValues.java b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaPropertyConstraintValidValues.java
new file mode 100644
index 0000000000..a07f681c7d
--- /dev/null
+++ b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/ToscaPropertyConstraintValidValues.java
@@ -0,0 +1,56 @@
+/*
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2020 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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.be.tosca.model;
+
+import java.util.List;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.Setter;
+import org.openecomp.sdc.be.model.tosca.constraints.ConstraintType;
+
+/**
+ * Represents a tosca valid_values constraint
+ */
+@Getter
+@Setter
+@AllArgsConstructor
+public class ToscaPropertyConstraintValidValues implements ToscaPropertyConstraint {
+
+ private List<String> validValues;
+
+ /**
+ * Get the TOSCA entry name of an attribute in this class.
+ *
+ * @param attributeName the class attribute name
+ * @return the TOSCA entry represented by the attribute
+ */
+ public static String getEntryToscaName(final String attributeName) {
+ if ("validValues".equals(attributeName)) {
+ return "valid_values";
+ }
+
+ return attributeName;
+ }
+
+ @Override
+ public ConstraintType getConstraintType() {
+ return ConstraintType.VALID_VALUES;
+ }
+}