7fc954e0a8ba65ec894dd145759f6173b47c5f37
[sdc.git] / catalog-dao / src / main / java / org / openecomp / sdc / be / dao / jsongraph / types / EdgeLabelEnum.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
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
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
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=========================================================
19  */
20 package org.openecomp.sdc.be.dao.jsongraph.types;
21
22 public enum EdgeLabelEnum {
23     // @formatter:off
24     ARTIFACTS,
25     DEPLOYMENT_ARTIFACTS,
26     INST_DEPLOYMENT_ARTIFACTS,
27     INSTANCE_ARTIFACTS,
28     INTERFACE_ARTIFACTS,
29     TOSCA_ARTIFACTS,
30     PROPERTIES,
31     CAPABILITIES,
32     CAPABILITIES_PROPERTIES,
33     REQUIREMENTS,
34     ATTRIBUTES,
35     ADDITIONAL_INFORMATION,
36     CATEGORY,
37     DERIVED_FROM,
38     STATE,
39     LAST_STATE,
40     LAST_MODIFIER,
41     VERSION,
42     CREATOR,
43     SUB_CATEGORY,
44     INPUTS,
45     OUTPUTS,
46     GROUPS,
47     INST_PROPERTIES,
48     INST_INPUTS,
49     INST_OUTPUTS,
50     INST_ATTRIBUTES,
51     INST_GROUPS,
52     SERVICE_API_ARTIFACTS,
53     FORWARDING_PATH,
54     CALCULATED_CAPABILITIES,
55     FULLFILLED_CAPABILITIES,
56     CALCULATED_REQUIREMENTS,
57     FULLFILLED_REQUIREMENTS,
58     LAST_DISTRIBUTION_STATE_MODIFIER,
59     CALCULATED_CAP_PROPERTIES,
60     POLICIES,
61     EXTERNAL_REFS,
62     CATALOG_ELEMENT,
63     ARCHIVE_ELEMENT,
64     INSTANCE_OF,
65     PROXY_OF,
66     ALLOTTED_OF,
67     INTERFACE,
68     INTERFACE_OPERATION,
69     INST_INTERFACES,
70     NODE_FILTER_TEMPLATE,
71     SUBSTITUTION_FILTER_TEMPLATE,
72     DATA_TYPES,
73     MODEL_ELEMENT;
74     // @formatter:on
75
76     /**
77      * Returns EdgeLabelEnum according received name
78      *
79      * @param name
80      * @return
81      */
82     public static EdgeLabelEnum getEdgeLabelEnum(String name) {
83         for (EdgeLabelEnum currLabel : EdgeLabelEnum.values()) {
84             if (currLabel.name().equals(name)) {
85                 return currLabel;
86             }
87         }
88         return null;
89     }
90
91     public boolean isInstanceArtifactsLabel() {
92         return this.equals(INSTANCE_ARTIFACTS) || this.equals(INST_DEPLOYMENT_ARTIFACTS);
93     }
94 }