2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2020 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=========================================================
21 package org.onap.policy.controlloop.actorserviceprovider;
24 * Names of properties needed by the Actors defined within this repo. Note: this is not
25 * exhaustive, as additional property names may be returned by company-defined Actors.
27 * Note: any time a property is added, applications using the actors must be updated to
28 * provide the property's value when requested.
30 public class OperationProperties {
33 * A&AI Default Cloud Region. Obtained as follows:
35 * <li>invoke the custom query getDefaultCloudRegion() method</li>
38 public static final String AAI_DEFAULT_CLOUD_REGION = "AAI/defaultCloudRegion";
41 * A&AI Default Tenant. Obtained as follows:
43 * <li>invoke the custom query getDefaultTenant() method</li>
46 public static final String AAI_DEFAULT_TENANT = "AAI/defaultTenant";
49 * A&AI PNF. Obtained as follows:
51 * <li>using the target entity, invoke AaiGetPnfOperation</li>
54 public static final String AAI_PNF = "AAI/pnf";
57 * A&AI [Generic] VNF for the target resource ID. Obtained as follows:
59 * <li>using the target resource ID, invoke the custom query
60 * getGenericVnfByModelInvariantId() method to get the generic VNF</li>
63 public static final String AAI_RESOURCE_VNF = "AAI/resourceId/vnf";
66 * A&AI Service instance. Obtained as follows:
68 * <li>invoke the custom query getServiceInstance() method</li>
71 public static final String AAI_SERVICE = "AAI/service";
74 * A&AI Service model. Obtained as follows:
76 * <li>invoke the custom query getServiceInstance() method</li>
77 * <li>using the service instance, invoke the getModelVersionId() method</li>
80 public static final String AAI_SERVICE_MODEL = "AAI/service/model";
83 * A&AI Target Entity. This is a String that can typically be found in the enrichment
84 * data, depending on the Target type. Sometimes, however, it must be retrieved via an
87 public static final String AAI_TARGET_ENTITY = "AAI/targetEntity";
90 * A&AI VNF. Obtained as follows:
92 * <li>using the target model invariant ID, invoke the custom query
93 * getGenericVnfByModelInvariantId() method to get the VNF</li>
94 * <li>using the VNF item, invoke the getModelVersionId() method to get the
98 public static final String AAI_VNF = "AAI/vnf";
101 * A&AI VNF Model. Obtained as follows:
103 * <li>using the target model invariant ID, invoke the custom query
104 * getGenericVnfByModelInvariantId() method to get the VNF</li>
105 * <li>using the VNF item, invoke the getModelVersionId() method to get the
107 * <li>using the version, invoke the custom query getModelVerByVersionId() method</li>
110 public static final String AAI_VNF_MODEL = "AAI/vnf/model";
113 * A&AI link to the vserver. Obtained as follows:
115 * <li>using the vserver name from the enrichment data, perform an A&AI tenant
117 * <li>get the "result-data" field from the tenant output</li>
118 * <li>get the "resource-link" field from that</li>
119 * <li>strip off the "/aai/v16" prefix</li>
122 public static final String AAI_VSERVER_LINK = "AAI/vserver/link";
125 * Optional A&AI properties (Map-String-String) for CDS GRPC. If an application
126 * provides this, it will be used instead of constructing the map from the other
129 public static final String OPT_CDS_GRPC_AAI_PROPERTIES = "cds/grpc/aai/properties";
132 * These are typically extracted from the event or from the event's enrichment data.
134 * NOTE: all of the values must be of the form "enrichment/{enrichment-field-name}".
136 public static final String ENRICHMENT_BANDWIDTH = "enrichment/bandwidth";
137 public static final String ENRICHMENT_BANDWIDTH_CHANGE_TIME = "enrichment/bandwidth-change-time";
138 public static final String ENRICHMENT_GENERIC_VNF_ID = "enrichment/generic-vnf.vnf-id";
139 public static final String ENRICHMENT_NETWORK_ID = "enrichment/network-information.network-id";
140 public static final String ENRICHMENT_SERVICE_ID = "enrichment/service-instance.service-instance-id";
141 public static final String ENRICHMENT_VNF_ID = "enrichment/vnfId";
142 public static final String ENRICHMENT_VSERVER_ID = "enrichment/vserver.vserver-id";
143 public static final String ENRICHMENT_VSERVER_NAME = "enrichment/vserver.vserver-name";
145 public static final String EVENT_ADDITIONAL_PARAMS = "event/additionalParams";
146 public static final String EVENT_PAYLOAD = "event/payload";
149 * These are data computed and/or tracked by the invoker.
153 * An Integer containing the count.
155 public static final String DATA_VF_COUNT = "data/vfCount";
158 private OperationProperties() {