1 package org.openecomp.sdc.be.utils;
4 import java.util.function.Consumer;
6 public class TypeUtils {
8 public static final String FIRST_CERTIFIED_VERSION_VERSION = "1.0";
10 public static <FieldType> void setField(Map<String, Object> toscaJson, ToscaTagNamesEnum tagName, Consumer<FieldType> setter) {
11 String fieldName = tagName.getElementName();
12 if (toscaJson.containsKey(fieldName)) {
13 FieldType fieldValue = (FieldType) toscaJson.get(fieldName);
14 setter.accept(fieldValue);
18 public enum ToscaTagNamesEnum {
19 DERIVED_FROM("derived_from"), IS_PASSWORD("is_password"),
21 PROPERTIES("properties"), TYPE("type"), STATUS("status"), ENTRY_SCHEMA("entry_schema"), REQUIRED("required"), DESCRIPTION("description"), DEFAULT_VALUE("default"), VALUE("value"), CONSTRAINTS("constraints"),
23 MEMBERS("members"), METADATA("metadata"),
27 CAPABILITIES("capabilities"), VALID_SOURCE_TYPES("valid_source_types"),
29 REQUIREMENTS("requirements"), NODE("node"), RELATIONSHIP("relationship"), CAPABILITY("capability"), INTERFACES("interfaces"),
30 // Heat env Validation
31 PARAMETERS("parameters"),
33 TOSCA_VERSION("tosca_definitions_version"), TOPOLOGY_TEMPLATE("topology_template"), NODE_TYPES("node_types"), OCCURRENCES("occurrences"), NODE_TEMPLATES("node_templates"), GROUPS("groups"), INPUTS("inputs"),
34 SUBSTITUTION_MAPPINGS("substitution_mappings"), NODE_TYPE("node_type"),
36 ATTRIBUTES("attributes"), LABEL("label"), HIDDEN("hidden"), IMMUTABLE("immutable"), GET_INPUT("get_input"), ANNOTATIONS("annotations");
38 private String elementName;
40 private ToscaTagNamesEnum(String elementName) {
41 this.elementName = elementName;
44 public String getElementName() {