Release version 1.13.7
[sdc.git] / catalog-dao / src / main / java / org / openecomp / sdc / be / dao / neo4j / GraphPropertiesDictionary.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.neo4j;
21
22 import lombok.AllArgsConstructor;
23 import lombok.Getter;
24
25 @AllArgsConstructor
26 @Getter
27 public enum GraphPropertiesDictionary {
28     // @formatter:off
29     //                                  field name                                      class type                              unique          indexed
30     //                                                                                          stored in graph                         index
31     // Common
32     LABEL                               ("nodeLabel",                           String.class,                           false,          true),
33     HEALTH_CHECK                ("healthcheckis",                       String.class,                           true,           true),
34     // Resource
35     NAME                                ("name",                                        String.class,                           false,          true),
36     DISPLAY_NAME        ("displayName",            String.class,               false,       true),
37     TOSCA_RESOURCE_NAME ("toscaResourceName",           String.class,                           false,          true),
38     CATEGORY_NAME               ("categoryName",                        String.class,                           false,          true),
39     VERSION                             ("version",                                     String.class,                           false,          true),
40     CREATION_DATE               ("creationDate",                        Long.class,                             false,          false),
41     LAST_UPDATE_DATE    ("modificationDate",            Long.class,                             false,          false),
42     IS_HIGHEST_VERSION  ("highestVersion",                      Boolean.class,                          false,          true),
43     IS_ABSTRACT                 ("abstract",                            Boolean.class,                          false,          true),
44     DESCRIPTION                 ("description",                         String.class,                           false,          false),
45     UNIQUE_ID                   ("uid",                                         String.class,                           true,           true),
46     STATE                               ("state",                                       String.class,                           false,          true),
47     TYPE                                ("type",                                        String.class,                           false,          true),
48     REQUIRED                    ("required",                            Boolean.class,                          false,          false),
49     DEFAULT_VALUE               ("defaultValue",                        String.class,                           false,          false),
50     CONSTRAINTS                 ("constraints",                         String.class,                   false,          false),
51     CONTACT_ID                  ("contactId",                           String.class,                           false,          false),
52     VENDOR_NAME                 ("vendorName",                          String.class,                           false,          false),
53     TENANT                      ("tenant",                                  String.class,                               false,          false),
54     VENDOR_RELEASE              ("vendorRelease",                       String.class,                           false,          false),
55     MODEL               ("model",                   String.class,               false,      false),
56     MODEL_TYPE          ("modelType",               String.class,               false,      false),
57     CONFORMANCE_LEVEL   ("conformanceLevel",            String.class,                           false,          false),
58     ICON                                ("icon",                                        String.class,                           false,          false),
59     TAGS                                ("tags",                                        String.class,                   false,          false),
60     UUID                                ("uuid",                                        String.class,                           false,          true),
61     COST                                ("cost",                                        String.class,                           false,          false),
62     LICENSE_TYPE                ("licenseType",                         String.class,                           false,          false),
63     NORMALIZED_NAME             ("normalizedName",                      String.class,                           false,          true),
64     SYSTEM_NAME                 ("systemName",                          String.class,                           false,          true),
65     IS_DELETED                  ("deleted",                                     Boolean.class,                          false,          true),
66     RESOURCE_TYPE               ("resourceType",                        String.class,                           false,          true),
67     ENTRY_SCHEMA                ("entry_schema",                        String.class,                           false,          false),
68     CSAR_UUID                   ("csarUuid",                            String.class,                           false,          true),
69     CSAR_VERSION                ("csarVersion",                         String.class,                           false,          true),
70     CSAR_VERSION_ID                     ("csarUuid",                            String.class,                           false,          true),
71     IMPORTED_TOSCA_CHECKSUM     ("importedToscaChecksum",                               String.class,                           false,          true),
72     GENERATED                   ("generated",                           Boolean.class,                          false,          false),
73     // User
74     USERID                              ("userId",                                      String.class,                           true,           true),
75     EMAIL                               ("email",                                       String.class,                           false,          false),
76     FIRST_NAME                  ("firstName",                           String.class,                           false,          false),
77     LAST_NAME                   ("lastName",                            String.class,                           false,          false),
78     ROLE                                ("role",                                        String.class,                           false,          true),
79     USER_STATUS                 ("status",                                      String.class,                           false,          true),
80     VALID_SOURCE_TYPES  ("validSourceTypes",        String.class,               false,          false),
81     VALID_TARGET_TYPES  ("validTargetTypes",        String.class,               false,      false),
82     NODE                                ("node",                                        String.class,                           false,          false),
83     VALUE                               ("value",                                       String.class,                           false,          false),
84     HIDDEN                              ("Hidden",                                      Boolean.class,                          false,          false),
85     PROPERTIES                  ("properties",                          String.class,                           false,          false),
86     POSITION_X                  ("positionX",                           String.class,                           false,          false),
87     POSITION_Y                  ("positionY",                           String.class,                           false,          false),
88     RELATIONSHIP_TYPE   ("relationshipType",            String.class,                           false,          false),
89     ARTIFACT_TYPE               ("artifactType",                        String.class,                           false,          true),
90     ARTIFACT_REF                ("artifactRef",                         String.class,                           false,          false),
91     ARTIFACT_REPOSITORY ("artifactRepository",          String.class,                           false,          false),
92     ARTIFACT_CHECKSUM   ("artifactChecksum",            String.class,                           false,          false),
93     CREATOR                             ("creator",                                     String.class,                           false,          false),
94     CREATOR_ID          ("creatorId",                           String.class,                           false,          false),
95     LAST_UPDATER                ("lastUpdater",                         String.class,                           false,          false),
96     CREATOR_FULL_NAME   ("creatorFullName",                     String.class,                           false,          false),
97     UPDATER_FULL_NAME   ("updaterFullName",                     String.class,                           false,          false),
98     ES_ID                               ("esId",                                        String.class,                           false,          false),
99     ARTIFACT_LABEL              ("artifactLabel",                       String.class,                           false,          true),
100     ARTIFACT_DISPLAY_NAME("artifactDisplayName",        String.class,                           false,          true),
101     INSTANCE_COUNTER    ("instanceCounter",                     Integer.class,                          false,          false),
102     PROJECT_CODE                ("projectCode",                         String.class,                           false,          false),
103     DISTRIBUTION_STATUS ("distributionStatus",          String.class,                           false,          false),
104     IS_VNF                              ("isVNF",                                       Boolean.class,                          false,          false),
105     LAST_LOGIN_TIME             ("lastLoginTime",                       Long.class,                                     false,          true),
106     ATTRIBUTE_COUNTER   ("attributeCounter",            Integer.class,                          false,          false),
107     INPUT_COUNTER               ("inputCounter",                        Integer.class,                          false,          false),
108     PROPERTY_COUNTER    ("propertyCounter",                     Integer.class,                          false,          false),
109     API_URL                             ("apiUrl",                                      String.class,                           false,          false),
110     SERVICE_API                 ("serviceApi",                          Boolean.class,                          false,          true),
111     ADDITIONAL_INFO_PARAMS ("additionalInfo",       String.class,              false,           false),
112     ADDITIONAL_INFO_ID_TO_KEY ("idToKey",               String.class,              false,               false),
113     ARTIFACT_GROUP_TYPE ("artifactGroupType",           String.class,              false,               true),
114     ARTIFACT_TIMEOUT    ("timeout",                                     Integer.class,                          false,          false),
115     IS_ACTIVE                   ("isActive",                            Boolean.class,                          false,          true),
116     PROPERTY_VALUE_RULES ("propertyValueRules",         String.class,                           false,          false),
117     //authantication
118     CONSUMER_NAME               ("consumerName",                        String.class,                           true,           true),
119     CONSUMER_PASSWORD   ("consumerPassword",            String.class,                           false,          false),
120     CONSUMER_SALT               ("consumerSalt",                        String.class,                           false,          false),
121     CONSUMER_LAST_AUTHENTICATION_TIME   ("consumerLastAuthenticationTime",              Long.class,                             false,          false),
122     CONSUMER_DETAILS_LAST_UPDATED_TIME  ("consumerDetailsLastupdatedtime",              Long.class,                             false,          false),
123     LAST_MODIFIER_USER_ID("lastModfierUserId",          String.class,                           false,          false),
124     ARTIFACT_VERSION    ("artifactVersion",                     String.class,                           false,          false),
125     ARTIFACT_UUID               ("artifactUUID",                        String.class,                           false,          false),
126     PAYLOAD_UPDATE_DATE ("payloadUpdateDate",           Long.class,                             false,          false),
127     HEAT_PARAMS_UPDATE_DATE     ("heatParamsUpdateDate",Long.class,                             false,          false),
128     //product
129     FULL_NAME                   ("fullName",                            String.class,               false,              true),
130     //was changed as part of migration from 1602 to 1602 ( in 1602 was defined as unique. it's problem to reconfigure the index )
131     CONSTANT_UUID               ("constantUuidNew",                     String.class,               false,              true),
132     CONTACTS                    ("contacts",                            String.class,                           false,          false),
133     //categorys
134     ICONS               ("icons",                   String.class,               false,      false),
135     METADATA_KEYS       ("metadataKeys",            String.class,               false,      false),
136     USE_SERVICE_SUBSTITUTION_FOR_NESTED_SERVICES   ("useServiceSubstitutionForNestedServices",      Boolean.class,                 false,      false),
137     NOT_APPLICABLE_METADATA_KEYS("notApplicableMetadataKeys", String.class,     false,      false),
138     //relation
139     CAPABILITY_OWNER_ID ("capOwnerId",                          String.class,                           false,          false),
140     REQUIREMENT_OWNER_ID ("reqOwnerId",                         String.class,                           false,          false),
141     CAPABILITY_ID               ("capabiltyId",                         String.class,                           false,          false),
142     REQUIREMENT_ID              ("requirementId",                       String.class,                           false,          false),
143     PROPERTY_ID                 ("propertyId",                          String.class,                           false,          false),
144     PROPERTY_NAME               ("propertyName",                        String.class,                           false,          false),
145     //component instance
146     ORIGIN_TYPE                 ("originType",                          String.class,                           false,          false),
147     //requirement & capabilty
148     MIN_OCCURRENCES             ("minOccurrences",                      String.class,                           false,          false),
149     MAX_OCCURRENCES             ("maxOccurrences",                      String.class,                           false,          false),
150     //Data type
151     DERIVED_FROM                ("derivedFrom",                         String.class,                           false,          false),
152     MEMBERS                             ("members",                                     String.class,                           false,          false),
153     TARGETS                             ("targets ",                            String.class,                           false,          false),
154     METADATA                    ("metadata",                            String.class,                           false,          false),
155     INVARIANT_UUID              ("invariantUuid",                       String.class,                           false,          true),
156     IS_BASE                             ("isBase",                                      Boolean.class,                          false,          true),
157     GROUP_UUID                  ("groupUuid",                       String.class,                               false,          true),
158     STATUS                              ("status",                              String.class,                           false,          false),
159     FUNCTIONAL_MENU             ("functionalMenu",                      String.class,                           false,          false),
160     REQUIRED_ARTIFACTS  ("requiredArtifacts",           String.class,                           false,          false),
161     CUSTOMIZATION_UUID  ("customizationUUID",           String.class,                           false,          false),
162     IS_ARCHIVED                 ("isArchived",                      Boolean.class,                              false,          true),
163     IS_VSP_ARCHIVED             ("isVspArchived",                   Boolean.class,                              false,          true),
164     NORMATIVE           ("normative",             Boolean.class,              false,      false),
165     ARCHIVE_TIME        ("archiveTime",             Long.class,                 false,      true);
166     // @formatter:on
167
168     private final String property;
169     private final Class<?> clazz;
170     private final boolean unique;
171     private final boolean indexed;
172
173 }