2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright © 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
11 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
20 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22 package org.onap.aai.schema.enums;
24 public enum ObjectMetadata {
27 * description of object
29 DESCRIPTION("description"),
31 * names of properties to appear in relationship-lists
32 * and parent objects in DMaaP messages
33 * <br><b>comma separated list</b>
35 NAME_PROPS("nameProps"),
37 * names of properties to be indexed in the
39 * <br><b>comma separated list</b>
41 INDEXED_PROPS("indexedProps"),
43 * name of the object this one depends on
45 DEPENDENT_ON("dependentOn"),
47 * name of the object which contains this object
49 CONTAINER("container"),
51 * the top level namespace to which this object belongs<br>
52 * <b>only valid on top level objects</b>
54 NAMESPACE("namespace"),
56 * properties which are searchable via the GUI
57 * <br><b>comma separated list</b>
59 SEARCHABLE("searchable"),
61 * properties marked as unique in the db schema
62 * <br><b>comma separated list</b>
64 UNIQUE_PROPS("uniqueProps"),
66 * abstract type from which this object extends
70 * comma separated list of objects who inherit this object<br>
71 * <b>only valid on abstract objects</b>
73 INHERITORS("inheritors"),
75 * a value of true marks this object as abstract
76 * abstract objects cannot be read/written directly
77 * they resolve to "or queries" when used in queries
81 * comma separated list of properties which are alternate ways
82 * to identify this object
84 ALTERNATE_KEYS_1("alternateKeys1"),
86 * the maximum allowable retrievable depth
88 MAXIMUM_DEPTH("maximumDepth"),
90 * collection of other objects to retrieve along with this one
91 * <br><b>comma separated list</b>
93 CROSS_ENTITY_REFERENCE("crossEntityReference"),
95 * Marks that this object can be linked to via dataLink
97 CAN_BE_LINKED("canBeLinked"),
99 * The entity contains properties that are suggestible
101 CONTAINS_SUGGESTIBLE_PROPS("containsSuggestibleProps"),
103 * A list of aliases for the entity name (for AAI UI searches)
105 SUGGESTION_ALIASES("suggestionAliases"),
107 * a value of true allows this object to be read directly
109 ALLOW_DIRECT_READ("allowDirectRead"),
111 * a value of true allows this object to be written directly
113 ALLOW_DIRECT_WRITE("allowDirectWrite");
115 private final String name;
117 private ObjectMetadata(String name) {
121 @Override public String toString() {