2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.sdc.be.dao.jsongraph.types;
23 import org.openecomp.sdc.be.datatypes.elements.*;
24 import org.openecomp.sdc.be.resources.data.DataTypeData;
27 public enum VertexTypeEnum {
28 NODE_TYPE ("node_type", null),
29 TOPOLOGY_TEMPLATE ("topology_template", CompositionDataDefinition.class),
30 ARTIFACTS ("artifacts", ArtifactDataDefinition.class),
31 TOSCA_ARTIFACTS ("tosca_artifacts", ArtifactDataDefinition.class),
32 DEPLOYMENT_ARTIFACTS ("deployment_artifacts", ArtifactDataDefinition.class),
33 INST_DEPLOYMENT_ARTIFACTS ("inst_deployment_artifacts", MapArtifactDataDefinition.class),
34 INTERFACE_ARTIFACTS ("interface_artifacts", InterfaceDataDefinition.class),
35 INSTANCE_ARTIFACTS ("instance_artifacts", MapArtifactDataDefinition.class),
36 PROPERTIES ("properties", PropertyDataDefinition.class),
37 CAPABILITIES ("capabilities", ListCapabilityDataDefinition.class),
38 CAPABILITIES_PROPERTIES ("capabilities_properties", MapPropertiesDataDefinition.class),
39 REQUIREMENTS ("requirements", ListRequirementDataDefinition.class),
40 ATTRIBUTES ("attributes", PropertyDataDefinition.class),
41 RESOURCE_CATEGORY ("resourceNewCategory", null),
42 RESOURCE_SUBCATEGORY ("resourceSubcategory", null),
43 SERVICE_CATEGORY ("serviceNewCategory", null),
44 ADDITIONAL_INFORMATION ("additional_information", AdditionalInfoParameterDataDefinition.class),
46 INPUTS ("inputs", PropertyDataDefinition.class),
47 GROUPS ("groups", GroupDataDefinition.class),
48 INST_ATTRIBUTES ("instAttributes", MapPropertiesDataDefinition.class),
49 INST_PROPERTIES ("instProperties", MapPropertiesDataDefinition.class),
50 INST_INPUTS ("instInputs", MapPropertiesDataDefinition.class),
51 INST_GROUPS ("instGroups", MapGroupsDataDefinition.class),
52 SERVICE_API_ARTIFACTS ("serviceApiArtifacts", ArtifactDataDefinition.class),
53 CALCULATED_CAPABILITIES ("calculatedCapabilities", MapListCapabilityDataDefinition.class),
54 FULLFILLED_CAPABILITIES ("fullfilledCapabilities", MapListCapabilityDataDefinition.class),
55 CALCULATED_REQUIREMENTS ("calculatedRequirements", MapListRequirementDataDefinition.class),
56 FULLFILLED_REQUIREMENTS ("fullfilledRequirements", MapListRequirementDataDefinition.class),
57 CALCULATED_CAP_PROPERTIES ("calculatedCapProperties", MapCapabilityProperty.class),
58 FORWARDING_PATH ("path", ForwardingPathDataDefinition.class),
59 POLICIES ("policies", PolicyDataDefinition.class),
60 EXTERNAL_REF ("componentInstanceExtRefs", MapComponentInstanceExternalRefs.class),
61 CATALOG_ROOT ("catalogRoot", null),
62 ARCHIVE_ROOT ("archiveRoot", null),
63 INTERFACE ("interface", InterfaceDataDefinition.class),
64 INTERFACE_OPERATION ("interfaceOperation", OperationDataDefinition.class),
65 NODE_FILTER_TEMPLATE ("NodeTemplateFilter", CINodeFilterDataDefinition.class),
66 INST_INTERFACES ("InstInterfaces", MapInterfaceDataDefinition.class),
67 DATA_TYPES ("data_types", DataTypeDataDefinition.class);
70 private Class classOfJson;
71 VertexTypeEnum(String name, Class clazz){
76 public String getName() {
80 public Class getClassOfJson() {
84 public static VertexTypeEnum getByName(String name){
85 for ( VertexTypeEnum inst : VertexTypeEnum.values() ){
86 if ( inst.getName().equals(name) ){