d03aa19c64e6acc882f7216ed9aea9768b44d2c3
[sdc.git] /
1 /*
2  * Copyright © 2016-2018 European Support Limited
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 package org.openecomp.sdc.tosca.datatypes;
18
19 import lombok.AccessLevel;
20 import lombok.NoArgsConstructor;
21 import org.onap.config.api.Configuration;
22 import org.onap.config.api.ConfigurationManager;
23 import org.openecomp.sdc.tosca.services.ConfigConstants;
24
25 @NoArgsConstructor(access = AccessLevel.PRIVATE)
26 public class ToscaNodeType {
27
28     private static Configuration config = ConfigurationManager.lookup();
29
30     public static final String VFC_NODE_TYPE_PREFIX =
31             config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_VFC);
32     public static final String CP_NODE_TYPE_PREFIX =
33             config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_CP);
34     public static final String EXTERNAL_CP_NODE_TYPE_PREFIX =
35             config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_EXTERNAL_CP);
36     public static final String NETWORK_NODE_TYPE_PREFIX =
37             config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_NETWORK);
38     public static final String ABSTRACT_NODE_TYPE_PREFIX =
39             config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_ABSTARCT);
40     public static final String RULE_NODE_TYPE_PREFIX =
41             config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_RULE);
42     public static final String NODE_TYPE_PREFIX =
43             config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX);
44
45     //TOSCA native types
46     public static final String NATIVE_COMPUTE = "tosca.nodes.Compute";
47     public static final String NATIVE_ROOT = "tosca.nodes.Root";
48     public static final String NATIVE_BLOCK_STORAGE = "tosca.nodes.BlockStorage";
49     public static final String NATIVE_NETWORK = "tosca.nodes.network.Network";
50     public static final String NATIVE_NETWORK_PORT = "tosca.nodes.network.Port";
51
52     //Additional types
53     public static final String NOVA_SERVER = VFC_NODE_TYPE_PREFIX + "heat.nova.Server";
54     public static final String CINDER_VOLUME = VFC_NODE_TYPE_PREFIX + "heat.cinder.Volume";
55     public static final String COMPUTE = VFC_NODE_TYPE_PREFIX + "Compute";
56     public static final String CONTRAIL_COMPUTE = VFC_NODE_TYPE_PREFIX + "heat.contrail.Compute";
57
58     public static final String NEUTRON_SECURITY_RULES =
59             RULE_NODE_TYPE_PREFIX + "heat.network.neutron.SecurityRules";
60     public static final String CONTRAILV2_NETWORK_RULE =
61             RULE_NODE_TYPE_PREFIX + "heat.network.contrailV2.NetworkRules";
62     public static final String CONTRAIL_NETWORK_RULE =
63             RULE_NODE_TYPE_PREFIX + "heat.network.contrail.NetworkRules";
64
65     public static final String NEUTRON_NET = NETWORK_NODE_TYPE_PREFIX + "heat.network.neutron.Net";
66     public static final String CONTRAILV2_VIRTUAL_NETWORK =
67             NETWORK_NODE_TYPE_PREFIX + "heat.network.contrailV2.VirtualNetwork";
68     public static final String CONTRAIL_VIRTUAL_NETWORK =
69             NETWORK_NODE_TYPE_PREFIX + "heat.network.contrail.VirtualNetwork";
70     public static final String NETWORK = NETWORK_NODE_TYPE_PREFIX + "network.Network";
71
72     public static final String NEUTRON_PORT = CP_NODE_TYPE_PREFIX + "heat.network.neutron.Port";
73     public static final String CONTRAILV2_VIRTUAL_MACHINE_INTERFACE =
74             CP_NODE_TYPE_PREFIX + "heat.contrailV2.VirtualMachineInterface";
75     public static final String CONTRAIL_PORT = CP_NODE_TYPE_PREFIX + "heat.network.contrail.Port";
76     public static final String NETWORK_PORT = CP_NODE_TYPE_PREFIX + "network.Port";
77     public static final String CONTRAILV2_VLAN_SUB_INTERFACE = CP_NODE_TYPE_PREFIX
78             + "heat.network.v2.contrailV2.VLANSubInterface";
79     public static final String NESTED_HEAT_RESOURCE_TYPE_PREFIX = ABSTRACT_NODE_TYPE_PREFIX + "heat.";
80     public static final String VLAN_SUB_INTERFACE_RESOURCE_TYPE_PREFIX =
81             NESTED_HEAT_RESOURCE_TYPE_PREFIX + "subinterface.";
82     //Port Mirroring external node types
83     public static final String EXTERNAL_CP = EXTERNAL_CP_NODE_TYPE_PREFIX + "extCP";
84     public static final String EXTERNAL_CONTRAIL_PORT = EXTERNAL_CP_NODE_TYPE_PREFIX
85             + "extContrailCP";
86     public static final String EXTERNAL_VMI_PORT = EXTERNAL_CP_NODE_TYPE_PREFIX
87             + "extVirtualMachineInterfaceCP";
88     public static final String EXTERNAL_NEUTRON_PORT = EXTERNAL_CP_NODE_TYPE_PREFIX + "extNeutronCP";
89
90     public static final String ABSTRACT_SUBSTITUTE = ABSTRACT_NODE_TYPE_PREFIX + "AbstractSubstitute";
91     public static final String VFC_ABSTRACT_SUBSTITUTE = ABSTRACT_NODE_TYPE_PREFIX + "VFC";
92     public static final String CONTRAIL_ABSTRACT_SUBSTITUTE =
93             ABSTRACT_NODE_TYPE_PREFIX + "contrail.AbstractSubstitute";
94     public static final String COMPLEX_VFC_NODE_TYPE = ABSTRACT_NODE_TYPE_PREFIX + "ComplexVFC";
95     //Questionnaire to Tosca Types
96     public static final String VNF_CONFIG_NODE_TYPE = ABSTRACT_NODE_TYPE_PREFIX + "VnfConfiguration";
97     public static final String MULTIFLAVOR_VFC_NODE_TYPE = ABSTRACT_NODE_TYPE_PREFIX + "MultiFlavorVFC";
98     public static final String MULTIDEPLOYMENTFLAVOR_NODE_TYPE = ABSTRACT_NODE_TYPE_PREFIX
99             + "MultiDeploymentFlavor.CVFC";
100     public static final String COMPUTE_TYPE_PREFIX = "org.openecomp.resource.vfc.compute.nodes.heat";
101     public static final String VFC_TYPE_PREFIX = "org.openecomp.resource.vfc.nodes.heat";
102     public static final String GROUP_TYPE_PREFIX = "org.openecomp.groups";
103     public static final String VFC_INSTANCE_GROUP = ".VfcInstanceGroup";
104 }
105