Add a display name for the category
[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     VENDOR_RELEASE              ("vendorRelease",                       String.class,                           false,          false),
54     MODEL               ("model",                   String.class,               false,      false),
55     MODEL_TYPE          ("modelType",               String.class,               false,      false),
56     CONFORMANCE_LEVEL   ("conformanceLevel",            String.class,                           false,          false),
57     ICON                                ("icon",                                        String.class,                           false,          false),
58     TAGS                                ("tags",                                        String.class,                   false,          false),
59     UUID                                ("uuid",                                        String.class,                           false,          true),
60     COST                                ("cost",                                        String.class,                           false,          false),
61     LICENSE_TYPE                ("licenseType",                         String.class,                           false,          false),
62     NORMALIZED_NAME             ("normalizedName",                      String.class,                           false,          true),
63     SYSTEM_NAME                 ("systemName",                          String.class,                           false,          true),
64     IS_DELETED                  ("deleted",                                     Boolean.class,                          false,          true),
65     RESOURCE_TYPE               ("resourceType",                        String.class,                           false,          true),
66     ENTRY_SCHEMA                ("entry_schema",                        String.class,                           false,          false),
67     CSAR_UUID                   ("csarUuid",                            String.class,                           false,          true),
68     CSAR_VERSION                ("csarVersion",                         String.class,                           false,          true),
69     CSAR_VERSION_ID                     ("csarUuid",                            String.class,                           false,          true),
70     IMPORTED_TOSCA_CHECKSUM     ("importedToscaChecksum",                               String.class,                           false,          true),
71     GENERATED                   ("generated",                           Boolean.class,                          false,          false),
72     // User
73     USERID                              ("userId",                                      String.class,                           true,           true),
74     EMAIL                               ("email",                                       String.class,                           false,          false),
75     FIRST_NAME                  ("firstName",                           String.class,                           false,          false),
76     LAST_NAME                   ("lastName",                            String.class,                           false,          false),
77     ROLE                                ("role",                                        String.class,                           false,          true),
78     USER_STATUS                 ("status",                                      String.class,                           false,          true),
79     VALID_SOURCE_TYPES  ("validSourceTypes",        String.class,               false,          false),
80     VALID_TARGET_TYPES  ("validTargetTypes",        String.class,               false,      false),
81     NODE                                ("node",                                        String.class,                           false,          false),
82     VALUE                               ("value",                                       String.class,                           false,          false),
83     HIDDEN                              ("Hidden",                                      Boolean.class,                          false,          false),
84     PROPERTIES                  ("properties",                          String.class,                           false,          false),
85     POSITION_X                  ("positionX",                           String.class,                           false,          false),
86     POSITION_Y                  ("positionY",                           String.class,                           false,          false),
87     RELATIONSHIP_TYPE   ("relationshipType",            String.class,                           false,          false),
88     ARTIFACT_TYPE               ("artifactType",                        String.class,                           false,          true),
89     ARTIFACT_REF                ("artifactRef",                         String.class,                           false,          false),
90     ARTIFACT_REPOSITORY ("artifactRepository",          String.class,                           false,          false),
91     ARTIFACT_CHECKSUM   ("artifactChecksum",            String.class,                           false,          false),
92     CREATOR                             ("creator",                                     String.class,                           false,          false),
93     CREATOR_ID          ("creatorId",                           String.class,                           false,          false),
94     LAST_UPDATER                ("lastUpdater",                         String.class,                           false,          false),
95     CREATOR_FULL_NAME   ("creatorFullName",                     String.class,                           false,          false),
96     UPDATER_FULL_NAME   ("updaterFullName",                     String.class,                           false,          false),
97     ES_ID                               ("esId",                                        String.class,                           false,          false),
98     ARTIFACT_LABEL              ("artifactLabel",                       String.class,                           false,          true),
99     ARTIFACT_DISPLAY_NAME("artifactDisplayName",        String.class,                           false,          true),
100     INSTANCE_COUNTER    ("instanceCounter",                     Integer.class,                          false,          false),
101     PROJECT_CODE                ("projectCode",                         String.class,                           false,          false),
102     DISTRIBUTION_STATUS ("distributionStatus",          String.class,                           false,          false),
103     IS_VNF                              ("isVNF",                                       Boolean.class,                          false,          false),
104     LAST_LOGIN_TIME             ("lastLoginTime",                       Long.class,                                     false,          true),
105     ATTRIBUTE_COUNTER   ("attributeCounter",            Integer.class,                          false,          false),
106     INPUT_COUNTER               ("inputCounter",                        Integer.class,                          false,          false),
107     PROPERTY_COUNTER    ("propertyCounter",                     Integer.class,                          false,          false),
108     API_URL                             ("apiUrl",                                      String.class,                           false,          false),
109     SERVICE_API                 ("serviceApi",                          Boolean.class,                          false,          true),
110     ADDITIONAL_INFO_PARAMS ("additionalInfo",       String.class,              false,           false),
111     ADDITIONAL_INFO_ID_TO_KEY ("idToKey",               String.class,              false,               false),
112     ARTIFACT_GROUP_TYPE ("artifactGroupType",           String.class,              false,               true),
113     ARTIFACT_TIMEOUT    ("timeout",                                     Integer.class,                          false,          false),
114     IS_ACTIVE                   ("isActive",                            Boolean.class,                          false,          true),
115     PROPERTY_VALUE_RULES ("propertyValueRules",         String.class,                           false,          false),
116     //authantication
117     CONSUMER_NAME               ("consumerName",                        String.class,                           true,           true),
118     CONSUMER_PASSWORD   ("consumerPassword",            String.class,                           false,          false),
119     CONSUMER_SALT               ("consumerSalt",                        String.class,                           false,          false),
120     CONSUMER_LAST_AUTHENTICATION_TIME   ("consumerLastAuthenticationTime",              Long.class,                             false,          false),
121     CONSUMER_DETAILS_LAST_UPDATED_TIME  ("consumerDetailsLastupdatedtime",              Long.class,                             false,          false),
122     LAST_MODIFIER_USER_ID("lastModfierUserId",          String.class,                           false,          false),
123     ARTIFACT_VERSION    ("artifactVersion",                     String.class,                           false,          false),
124     ARTIFACT_UUID               ("artifactUUID",                        String.class,                           false,          false),
125     PAYLOAD_UPDATE_DATE ("payloadUpdateDate",           Long.class,                             false,          false),
126     HEAT_PARAMS_UPDATE_DATE     ("heatParamsUpdateDate",Long.class,                             false,          false),
127     //product
128     FULL_NAME                   ("fullName",                            String.class,               false,              true),
129     //was changed as part of migration from 1602 to 1602 ( in 1602 was defined as unique. it's problem to reconfigure the index )
130     CONSTANT_UUID               ("constantUuidNew",                     String.class,               false,              true),
131     CONTACTS                    ("contacts",                            String.class,                           false,          false),
132     //categorys
133     ICONS               ("icons",                   String.class,               false,      false),
134     METADATA_KEYS       ("metadataKeys",            String.class,               false,      false),
135     USE_SERVICE_SUBSTITUTION_FOR_NESTED_SERVICES   ("useServiceSubstitutionForNestedServices",      Boolean.class,                 false,      false),
136     //relation
137     CAPABILITY_OWNER_ID ("capOwnerId",                          String.class,                           false,          false),
138     REQUIREMENT_OWNER_ID ("reqOwnerId",                         String.class,                           false,          false),
139     CAPABILITY_ID               ("capabiltyId",                         String.class,                           false,          false),
140     REQUIREMENT_ID              ("requirementId",                       String.class,                           false,          false),
141     PROPERTY_ID                 ("propertyId",                          String.class,                           false,          false),
142     PROPERTY_NAME               ("propertyName",                        String.class,                           false,          false),
143     //component instance
144     ORIGIN_TYPE                 ("originType",                          String.class,                           false,          false),
145     //requirement & capabilty
146     MIN_OCCURRENCES             ("minOccurrences",                      String.class,                           false,          false),
147     MAX_OCCURRENCES             ("maxOccurrences",                      String.class,                           false,          false),
148     //Data type
149     DERIVED_FROM                ("derivedFrom",                         String.class,                           false,          false),
150     MEMBERS                             ("members",                                     String.class,                           false,          false),
151     TARGETS                             ("targets ",                            String.class,                           false,          false),
152     METADATA                    ("metadata",                            String.class,                           false,          false),
153     INVARIANT_UUID              ("invariantUuid",                       String.class,                           false,          true),
154     IS_BASE                             ("isBase",                                      Boolean.class,                          false,          true),
155     GROUP_UUID                  ("groupUuid",                       String.class,                               false,          true),
156     STATUS                              ("status",                              String.class,                           false,          false),
157     FUNCTIONAL_MENU             ("functionalMenu",                      String.class,                           false,          false),
158     REQUIRED_ARTIFACTS  ("requiredArtifacts",           String.class,                           false,          false),
159     CUSTOMIZATION_UUID  ("customizationUUID",           String.class,                           false,          false),
160     IS_ARCHIVED                 ("isArchived",                      Boolean.class,                              false,          true),
161     IS_VSP_ARCHIVED             ("isVspArchived",                   Boolean.class,                              false,          true),
162     ARCHIVE_TIME                ("archiveTime",                     Long.class,                                 false,          true);
163     // @formatter:on
164
165     private final String property;
166     private final Class<?> clazz;
167     private final boolean unique;
168     private final boolean indexed;
169
170 }