9afe8e5521879f1f8a28e4d23d0a956bfede7f3c
[sdc.git] / openecomp-be / lib / openecomp-tosca-lib / src / main / java / org / openecomp / sdc / tosca / datatypes / ToscaNodeType.java
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 org.openecomp.config.api.Configuration;
20 import org.openecomp.config.api.ConfigurationManager;
21 import org.openecomp.sdc.tosca.services.ConfigConstants;
22
23
24 public class ToscaNodeType {
25
26   private static Configuration config = ConfigurationManager.lookup();
27
28   public static final String VFC_NODE_TYPE_PREFIX =
29       config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_VFC);
30   public static final String CP_NODE_TYPE_PREFIX =
31       config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_CP);
32   public static final String EXTERNAL_CP_NODE_TYPE_PREFIX =
33       config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_EXTERNAL_CP);
34   public static final String NETWORK_NODE_TYPE_PREFIX =
35       config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_NETWORK);
36   public static final String ABSTRACT_NODE_TYPE_PREFIX =
37       config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_ABSTARCT);
38   public static final String RULE_NODE_TYPE_PREFIX =
39       config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_RULE);
40   public static final String NODE_TYPE_PREFIX =
41       config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX);
42
43   //TOSCA native types
44   public static final String NATIVE_COMPUTE = "tosca.nodes.Compute";
45   public static final String NATIVE_ROOT = "tosca.nodes.Root";
46   public static final String NATIVE_BLOCK_STORAGE = "tosca.nodes.BlockStorage";
47   public static final String NATIVE_NETWORK = "tosca.nodes.network.Network";
48   public static final String NATIVE_NETWORK_PORT = "tosca.nodes.network.Port";
49
50   //Additional types
51   public static final String NOVA_SERVER = VFC_NODE_TYPE_PREFIX + "heat.nova.Server";
52   public static final String CINDER_VOLUME = VFC_NODE_TYPE_PREFIX + "heat.cinder.Volume";
53   public static final String COMPUTE = VFC_NODE_TYPE_PREFIX + "Compute";
54   public static final String CONTRAIL_COMPUTE = VFC_NODE_TYPE_PREFIX + "heat.contrail.Compute";
55
56   public static final String NEUTRON_SECURITY_RULES =
57       RULE_NODE_TYPE_PREFIX + "heat.network.neutron.SecurityRules";
58   public static final String CONTRAILV2_NETWORK_RULE =
59       RULE_NODE_TYPE_PREFIX + "heat.network.contrailV2.NetworkRules";
60   public static final String CONTRAIL_NETWORK_RULE =
61       RULE_NODE_TYPE_PREFIX + "heat.network.contrail.NetworkRules";
62
63   public static final String NEUTRON_NET = NETWORK_NODE_TYPE_PREFIX + "heat.network.neutron.Net";
64   public static final String CONTRAILV2_VIRTUAL_NETWORK =
65       NETWORK_NODE_TYPE_PREFIX + "heat.network.contrailV2.VirtualNetwork";
66   public static final String CONTRAIL_VIRTUAL_NETWORK =
67       NETWORK_NODE_TYPE_PREFIX + "heat.network.contrail.VirtualNetwork";
68   public static final String NETWORK = NETWORK_NODE_TYPE_PREFIX + "network.Network";
69
70   public static final String NEUTRON_PORT = CP_NODE_TYPE_PREFIX + "heat.network.neutron.Port";
71   public static final String CONTRAILV2_VIRTUAL_MACHINE_INTERFACE =
72       CP_NODE_TYPE_PREFIX + "heat.contrailV2.VirtualMachineInterface";
73   public static final String CONTRAIL_PORT = CP_NODE_TYPE_PREFIX + "heat.network.contrail.Port";
74   public static final String NETWORK_PORT = CP_NODE_TYPE_PREFIX + "network.Port";
75   public static final String CONTRAILV2_VLAN_SUB_INTERFACE = CP_NODE_TYPE_PREFIX
76       + "heat.network.v2.contrailV2.VLANSubInterface";
77   public static final String NESTED_HEAT_RESOURCE_TYPE_PREFIX = ABSTRACT_NODE_TYPE_PREFIX + "heat.";
78   public static final String VLAN_SUB_INTERFACE_RESOURCE_TYPE_PREFIX =
79       NESTED_HEAT_RESOURCE_TYPE_PREFIX + "subinterface.";
80   //Port Mirroring external node types
81   public static final String EXTERNAL_CP = EXTERNAL_CP_NODE_TYPE_PREFIX + "extCP";
82   public static final String EXTERNAL_CONTRAIL_PORT = EXTERNAL_CP_NODE_TYPE_PREFIX
83       + "extContrailCP";
84   public static final String EXTERNAL_VMI_PORT = EXTERNAL_CP_NODE_TYPE_PREFIX
85       + "extVirtualMachineInterfaceCP";
86   public static final String EXTERNAL_NEUTRON_PORT = EXTERNAL_CP_NODE_TYPE_PREFIX + "extNeutronCP";
87
88   public static final String ABSTRACT_SUBSTITUTE = ABSTRACT_NODE_TYPE_PREFIX + "AbstractSubstitute";
89   public static final String VFC_ABSTRACT_SUBSTITUTE = ABSTRACT_NODE_TYPE_PREFIX + "VFC";
90   public static final String CONTRAIL_ABSTRACT_SUBSTITUTE =
91       ABSTRACT_NODE_TYPE_PREFIX + "contrail.AbstractSubstitute";
92   public static final String COMPLEX_VFC_NODE_TYPE = ABSTRACT_NODE_TYPE_PREFIX + "ComplexVFC";
93   //Questionnaire to Tosca Types
94   public static final String VNF_CONFIG_NODE_TYPE = ABSTRACT_NODE_TYPE_PREFIX + "VnfConfiguration";
95   public static final String MULTIFLAVOR_VFC_NODE_TYPE = ABSTRACT_NODE_TYPE_PREFIX + "MultiFlavorVFC";
96   public static final String MULTIDEPLOYMENTFLAVOR_NODE_TYPE = ABSTRACT_NODE_TYPE_PREFIX
97       + "MultiDeploymentFlavor.CVFC";
98   public static final String COMPUTE_TYPE_PREFIX = "org.openecomp.resource.vfc.compute.nodes.heat";
99   public static final String VFC_TYPE_PREFIX = "org.openecomp.resource.vfc.nodes.heat";
100   public static final String GROUP_TYPE_PREFIX = "org.openecomp.groups";
101   public static final String VFC_INSTANCE_GROUP = ".VfcInstanceGroup";
102
103   private ToscaNodeType() {
104   }
105 }
106