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