Remove dmaap from models
[policy/models.git] / models-interactions / model-actors / actorServiceProvider / src / main / java / org / onap / policy / controlloop / actorserviceprovider / OperationProperties.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP
4  * ================================================================================
5  * Copyright (C) 2020-2021 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
21 package org.onap.policy.controlloop.actorserviceprovider;
22
23 import lombok.AccessLevel;
24 import lombok.NoArgsConstructor;
25
26 /**
27  * Names of properties needed by the Actors defined within this repo. Note: this is not
28  * exhaustive, as additional property names may be returned by company-defined Actors.
29  * <p/>
30  * Note: any time a property is added, applications using the actors must be updated to
31  * provide the property's value when requested.
32  */
33 @NoArgsConstructor(access = AccessLevel.PRIVATE)
34 public final class OperationProperties {
35
36     /**
37      * A&AI Default Cloud Region. Obtained as follows:
38      * <ol>
39      * <li>invoke the custom query getDefaultCloudRegion() method</li>
40      * </ol>
41      */
42     public static final String AAI_DEFAULT_CLOUD_REGION = "AAI/defaultCloudRegion";
43
44     /**
45      * A&AI Default Tenant. Obtained as follows:
46      * <ol>
47      * <li>invoke the custom query getDefaultTenant() method</li>
48      * </ol>
49      */
50     public static final String AAI_DEFAULT_TENANT = "AAI/defaultTenant";
51
52     /**
53      * A&AI PNF. Obtained as follows:
54      * <ol>
55      * <li>using the target entity, invoke AaiGetPnfOperation</li>
56      * </ol>
57      */
58     public static final String AAI_PNF = "AAI/pnf";
59
60     /**
61      * A&AI [Generic] VNF for the target resource ID. Obtained as follows:
62      * <ol>
63      * <li>using the target resource ID, invoke the custom query
64      * getGenericVnfByModelInvariantId() method to get the generic VNF</li>
65      * </ol>
66      */
67     public static final String AAI_RESOURCE_VNF = "AAI/resourceId/vnf";
68
69     /**
70      * A&AI Service instance. Obtained as follows:
71      * <ol>
72      * <li>invoke the custom query getServiceInstance() method</li>
73      * </ol>
74      */
75     public static final String AAI_SERVICE = "AAI/service";
76
77     /**
78      * A&AI Service model. Obtained as follows:
79      * <ol>
80      * <li>invoke the custom query getServiceInstance() method</li>
81      * <li>using the service instance, invoke the getModelVersionId() method</li>
82      * </ol>
83      */
84     public static final String AAI_SERVICE_MODEL = "AAI/service/model";
85
86     /**
87      * A&AI Target Entity. This is a String that can typically be found in the enrichment
88      * data, depending on the Target type. Sometimes, however, it must be retrieved via an
89      * A&AI query.
90      */
91     public static final String AAI_TARGET_ENTITY = "AAI/targetEntity";
92
93     /**
94      * A&AI VNF. Obtained as follows:
95      * <ol>
96      * <li>using the target model invariant ID, invoke the custom query
97      * getGenericVnfByModelInvariantId() method to get the VNF</li>
98      * <li>using the VNF item, invoke the getModelVersionId() method to get the
99      * version</li>
100      * </ol>
101      */
102     public static final String AAI_VNF = "AAI/vnf";
103
104     /**
105      * A&AI VNF Model. Obtained as follows:
106      * <ol>
107      * <li>using the target model invariant ID, invoke the custom query
108      * getGenericVnfByModelInvariantId() method to get the VNF</li>
109      * <li>using the VNF item, invoke the getModelVersionId() method to get the
110      * version</li>
111      * <li>using the version, invoke the custom query getModelVerByVersionId() method</li>
112      * </ol>
113      */
114     public static final String AAI_VNF_MODEL = "AAI/vnf/model";
115
116     /**
117      * A&AI link to the vserver. Obtained as follows:
118      * <ol>
119      * <li>using the vserver name from the enrichment data, perform an A&AI tenant
120      * query</li>
121      * <li>get the "result-data" field from the tenant output</li>
122      * <li>get the "resource-link" field from that</li>
123      * <li>strip off the "/aai/v16" prefix</li>
124      * </ol>
125      */
126     public static final String AAI_VSERVER_LINK = "AAI/vserver/link";
127
128     /**
129      * Optional A&AI properties (Map-String-String) for CDS GRPC. If an application
130      * provides this, it will be used instead of constructing the map from the other
131      * properties.
132      */
133     public static final String OPT_CDS_GRPC_AAI_PROPERTIES = "cds/grpc/aai/properties";
134
135     /*
136      * These are typically extracted from the event or from the event's enrichment data.
137      *
138      * NOTE: all of the values must be of the form "enrichment/{enrichment-field-name}".
139      */
140     public static final String ENRICHMENT_BANDWIDTH = "enrichment/bandwidth";
141     public static final String ENRICHMENT_BANDWIDTH_CHANGE_TIME = "enrichment/bandwidth-change-time";
142     public static final String ENRICHMENT_GENERIC_VNF_ID = "enrichment/generic-vnf.vnf-id";
143     public static final String ENRICHMENT_NETWORK_ID = "enrichment/network-information.network-id";
144     public static final String ENRICHMENT_SERVICE_ID = "enrichment/service-instance.service-instance-id";
145     public static final String ENRICHMENT_VNF_ID = "enrichment/vnfId";
146     public static final String ENRICHMENT_VSERVER_ID = "enrichment/vserver.vserver-id";
147     public static final String ENRICHMENT_VSERVER_NAME = "enrichment/vserver.vserver-name";
148
149     public static final String EVENT_ADDITIONAL_PARAMS = "event/additionalParams";
150     public static final String EVENT_PAYLOAD = "event/payload";
151
152     /*
153      * These are data computed and/or tracked by the invoker.
154      */
155
156     /**
157      * An Integer containing the count.
158      */
159     public static final String DATA_VF_COUNT = "data/vfCount";
160 }