Add support for workflow validation
[ccsdk/cds.git] / components / core / src / main / kotlin / org / onap / ccsdk / apps / controllerblueprints / core / BluePrintConstants.kt
1 /*\r
2  * Copyright © 2017-2018 AT&T Intellectual Property.\r
3  * Modifications Copyright © 2018 IBM.\r
4  *\r
5  * Licensed under the Apache License, Version 2.0 (the "License");\r
6  * you may not use this file except in compliance with the License.\r
7  * You may obtain a copy of the License at\r
8  *\r
9  *     http://www.apache.org/licenses/LICENSE-2.0\r
10  *\r
11  * Unless required by applicable law or agreed to in writing, software\r
12  * distributed under the License is distributed on an "AS IS" BASIS,\r
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
14  * See the License for the specific language governing permissions and\r
15  * limitations under the License.\r
16  */\r
17 \r
18 package org.onap.ccsdk.apps.controllerblueprints.core\r
19 \r
20 /**\r
21  * BluePrintConstants\r
22  *\r
23  * @author Brinda Santh\r
24  */\r
25 object BluePrintConstants {\r
26 \r
27     const val RESPONSE_HEADER_TRANSACTION_ID: String = "X-ONAP-RequestID"\r
28     const val RESPONSE_HEADER_MINOR_VERSION: String = "X-MinorVersion"\r
29     const val RESPONSE_HEADER_PATCH_VERSION: String = "X-PatchVersion"\r
30     const val RESPONSE_HEADER_LATEST_VERSION: String = "X-LatestVersion"\r
31 \r
32     const val STATUS_SUCCESS: String = "success"\r
33     const val STATUS_FAILURE: String = "failure"\r
34 \r
35     const val TYPE_DEFAULT: String = "default"\r
36 \r
37     const val DATA_TYPE_STRING: String = "string"\r
38     const val DATA_TYPE_INTEGER: String = "integer"\r
39     const val DATA_TYPE_FLOAT: String = "float"\r
40     const val DATA_TYPE_BOOLEAN: String = "boolean"\r
41     const val DATA_TYPE_TIMESTAMP: String = "timestamp"\r
42     const val DATA_TYPE_NULL: String = "null"\r
43     const val DATA_TYPE_LIST: String = "list"\r
44     const val DATA_TYPE_MAP: String = "map"\r
45 \r
46     const val USER_SYSTEM: String = "System"\r
47 \r
48     const val PATH_DIVIDER: String = "/"\r
49     const val PATH_SERVICE_TEMPLATE: String = "service_template"\r
50     const val PATH_TOPOLOGY_TEMPLATE: String = "topology_template"\r
51     const val PATH_METADATA: String = "metadata"\r
52     const val PATH_NODE_TYPES: String = "node_types"\r
53     const val PATH_POLICY_TYPES: String = "policy_types"\r
54     const val PATH_RELATIONSHIP_TYPES: String = "relationship_types"\r
55     const val PATH_ARTIFACT_TYPES: String = "artifact_types"\r
56     const val PATH_DATA_TYPES: String = "data_types"\r
57     const val PATH_INPUTS: String = "inputs"\r
58     const val PATH_NODE_WORKFLOWS: String = "workflows"\r
59     const val PATH_NODE_TEMPLATES: String = "node_templates"\r
60     const val PATH_CAPABILITIES: String = "capabilities"\r
61     const val PATH_REQUIREMENTS: String = "requirements"\r
62     const val PATH_INTERFACES: String = "interfaces"\r
63     const val PATH_OPERATIONS: String = "operations"\r
64     const val PATH_OUTPUTS: String = "outputs"\r
65     const val PATH_PROPERTIES: String = "properties"\r
66     const val PATH_ATTRIBUTES: String = "attributes"\r
67     const val PATH_ARTIFACTS: String = "artifacts"\r
68 \r
69     const val MODEL_DIR_MODEL_TYPE: String = "definition-type"\r
70 \r
71     const val MODEL_DEFINITION_TYPE_NODE_TYPE: String = "node_type"\r
72     const val MODEL_DEFINITION_TYPE_ARTIFACT_TYPE: String = "artifact_type"\r
73     const val MODEL_DEFINITION_TYPE_CAPABILITY_TYPE: String = "capability_type"\r
74     const val MODEL_DEFINITION_TYPE_RELATIONSHIP_TYPE: String = "relationship_type"\r
75     const val MODEL_DEFINITION_TYPE_DATA_TYPE: String = "data_type"\r
76 \r
77     const val MODEL_TYPE_DATATYPES_ROOT: String = "tosca.datatypes.Root"\r
78     const val MODEL_TYPE_NODES_ROOT: String = "tosca.nodes.Root"\r
79     const val MODEL_TYPE_GROUPS_ROOT: String = "tosca.groups.Root"\r
80     const val MODEL_TYPE_RELATIONSHIPS_ROOT: String = "tosca.relationships.Root"\r
81     const val MODEL_TYPE_ARTIFACTS_ROOT: String = "tosca.artifacts.Root"\r
82     const val MODEL_TYPE_CAPABILITIES_ROOT: String = "tosca.capabilities.Root"\r
83     const val MODEL_TYPE_INTERFACES_ROOT: String = "tosca.interfaces.Root"\r
84 \r
85     const val MODEL_TYPE_RELATIONSHIPS_DEPENDS_ON = "tosca.relationships.DependsOn"\r
86     const val MODEL_TYPE_RELATIONSHIPS_HOSTED_ON = "tosca.relationships.HostedOn"\r
87     const val MODEL_TYPE_RELATIONSHIPS_CONNECTS_TO = "tosca.relationships.ConnectsTo"\r
88     const val MODEL_TYPE_RELATIONSHIPS_ATTACH_TO = "tosca.relationships.AttachesTo"\r
89     const val MODEL_TYPE_RELATIONSHIPS_ROUTES_TO = "tosca.relationships.RoutesTo"\r
90 \r
91     const val MODEL_TYPE_NODE_DG = "tosca.nodes.DG"\r
92     const val MODEL_TYPE_NODE_COMPONENT = "tosca.nodes.Component"\r
93     const val MODEL_TYPE_NODE_VNF = "tosca.nodes.Vnf"\r
94     @Deprecated("Artifacts will be attached to Node Template")\r
95     const val MODEL_TYPE_NODE_ARTIFACT = "tosca.nodes.Artifact"\r
96     const val MODEL_TYPE_NODE_RESOURCE_SOURCE = "tosca.nodes.ResourceSource"\r
97 \r
98     const val MODEL_TYPE_NODES_COMPONENT_JAVA: String = "tosca.nodes.component.Java"\r
99     const val MODEL_TYPE_NODES_COMPONENT_BUNDLE: String = "tosca.nodes.component.Bundle"\r
100     const val MODEL_TYPE_NODES_COMPONENT_SCRIPT: String = "tosca.nodes.component.Script"\r
101     const val MODEL_TYPE_NODES_COMPONENT_PYTHON: String = "tosca.nodes.component.Python"\r
102     const val MODEL_TYPE_NODES_COMPONENT_JYTHON: String = "tosca.nodes.component.Jython"\r
103     const val MODEL_TYPE_NODES_COMPONENT_JAVA_SCRIPT: String = "tosca.nodes.component.JavaScript"\r
104 \r
105     const val MODEL_TYPE_ARTIFACT_TYPE_IMPLEMENTATION = "tosca.artifacts.Implementation"\r
106 \r
107     const val MODEL_TYPE_DATA_TYPE_DYNAMIC = "tosca.datatypes.Dynamic"\r
108 \r
109     const val MODEL_TYPE_CAPABILITY_TYPE_NODE = "tosca.capabilities.Node"\r
110     const val MODEL_TYPE_CAPABILITY_TYPE_COMPUTE = "tosca.capabilities.Compute"\r
111     const val MODEL_TYPE_CAPABILITY_TYPE_NETWORK = "tosca.capabilities.Network"\r
112     const val MODEL_TYPE_CAPABILITY_TYPE_STORAGE = "tosca.capabilities.Storage"\r
113     const val MODEL_TYPE_CAPABILITY_TYPE_ENDPOINT = "tosca.capabilities.Endpoint"\r
114     const val MODEL_TYPE_CAPABILITY_TYPE_ENDPOINT_PUBLIC = "tosca.capabilities.Endpoint.Public"\r
115     const val MODEL_TYPE_CAPABILITY_TYPE_ENDPOINT_ADMIN = "tosca.capabilities.Endpoint.Admin"\r
116     const val MODEL_TYPE_CAPABILITY_TYPE_ENDPOINT_DATABASE = "tosca.capabilities.Endpoint.Database"\r
117     const val MODEL_TYPE_CAPABILITY_TYPE_ATTACHMENT = "tosca.capabilities.Attachment"\r
118     const val MODEL_TYPE_CAPABILITY_TYPE_OPERATION_SYSTEM = "tosca.capabilities.OperatingSystem"\r
119     const val MODEL_TYPE_CAPABILITY_TYPE_BINDABLE = "tosca.capabilities.network.Bindable"\r
120     // Custom capabilities\r
121     const val MODEL_TYPE_CAPABILITY_TYPE_CONTENT = "tosca.capabilities.Content"\r
122     const val MODEL_TYPE_CAPABILITY_TYPE_MAPPING = "tosca.capabilities.Mapping"\r
123     const val MODEL_TYPE_CAPABILITY_TYPE_NETCONF = "tosca.capabilities.Netconf"\r
124     const val MODEL_TYPE_CAPABILITY_TYPE_SSH = "tosca.capabilities.Ssh"\r
125     const val MODEL_TYPE_CAPABILITY_TYPE_SFTP = "tosca.capabilities.Sftp"\r
126 \r
127     const val EXPRESSION_GET_INPUT: String = "get_input"\r
128     const val EXPRESSION_GET_ATTRIBUTE: String = "get_attribute"\r
129     const val EXPRESSION_GET_ARTIFACT: String = "get_artifact"\r
130     const val EXPRESSION_GET_PROPERTY: String = "get_property"\r
131     const val EXPRESSION_GET_OPERATION_OUTPUT: String = "get_operation_output"\r
132     const val EXPRESSION_GET_NODE_OF_TYPE: String = "get_nodes_of_type"\r
133 \r
134     const val PROPERTY_BLUEPRINT_PROCESS_ID: String = "blueprint-process-id"\r
135     const val PROPERTY_BLUEPRINT_BASE_PATH: String = "blueprint-basePath"\r
136     const val PROPERTY_BLUEPRINT_RUNTIME: String = "blueprint-runtime"\r
137     const val PROPERTY_BLUEPRINT_INPUTS_DATA: String = "blueprint-inputs-data"\r
138     const val PROPERTY_BLUEPRINT_CONTEXT: String = "blueprint-context"\r
139     const val PROPERTY_BLUEPRINT_NAME: String = "template_name"\r
140     const val PROPERTY_BLUEPRINT_VERSION: String = "template_version"\r
141 \r
142     const val TOSCA_METADATA_DIR: String = "TOSCA-Metadata"\r
143     const val TOSCA_METADATA_ENTRY_DEFINITION_FILE: String = "TOSCA-Metadata/TOSCA.meta"\r
144     const val TOSCA_DEFINITIONS_DIR: String = "Definitions"\r
145     const val TOSCA_PLANS_DIR: String = "Plans"\r
146     const val TOSCA_SCRIPTS_DIR: String = "Scripts"\r
147     const val TOSCA_MAPPINGS_DIR: String = "Mappings"\r
148     const val TOSCA_TEMPLATES_DIR: String = "Templates"\r
149 \r
150     const val METADATA_USER_GROUPS = "user-groups"\r
151     const val METADATA_TEMPLATE_NAME = "template_name"\r
152     const val METADATA_TEMPLATE_VERSION = "template_version"\r
153     const val METADATA_TEMPLATE_AUTHOR = "template_author"\r
154     const val METADATA_TEMPLATE_TAGS = "template_tags"\r
155     const val METADATA_WORKFLOW_NAME = "workflow_name"\r
156 \r
157     const val PAYLOAD_DATA = "payload-data"\r
158     const val PROPERTY_CURRENT_STEP = "current-step"\r
159     const val PROPERTY_CURRENT_NODE_TEMPLATE = "current-node-template"\r
160     const val PROPERTY_CURRENT_INTERFACE = "current-interface"\r
161     const val PROPERTY_CURRENT_OPERATION = "current-operation"\r
162     const val PROPERTY_CURRENT_IMPLEMENTATION = "current-implementation"\r
163     const val PROPERTY_EXECUTION_REQUEST = "execution-request"\r
164 \r
165     const val OPERATION_PROCESS = "process"\r
166     const val OPERATION_PREPARE = "prepare"\r
167 \r
168     const val BLUEPRINT_RETRIEVE_TYPE_DB = "db"\r
169     const val BLUEPRINT_RETRIEVE_TYPE_FILE = "file"\r
170     const val BLUEPRINT_RETRIEVE_TYPE_REPO = "repo"\r
171 \r
172 }