2 * ============LICENSE_START=======================================================
3 * MSOActorServiceProvider
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
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.actor.mso;
23 import java.util.Collections;
24 import java.util.HashMap;
25 import java.util.List;
27 import java.util.UUID;
29 import org.drools.core.WorkingMemory;
30 import org.onap.policy.aai.AAINQF199.AAINQF199InstanceFilters;
31 import org.onap.policy.aai.AAINQF199.AAINQF199InventoryResponseItem;
32 import org.onap.policy.aai.AAINQF199.AAINQF199Manager;
33 import org.onap.policy.aai.AAINQF199.AAINQF199NamedQuery;
34 import org.onap.policy.aai.AAINQF199.AAINQF199QueryParameters;
35 import org.onap.policy.aai.AAINQF199.AAINQF199Request;
36 import org.onap.policy.aai.AAINQF199.AAINQF199RequestWrapper;
37 import org.onap.policy.aai.AAINQF199.AAINQF199Response;
38 import org.onap.policy.aai.AAINQF199.AAINQF199ResponseWrapper;
39 import org.onap.policy.controlloop.ControlLoopNotificationType;
40 import org.onap.policy.controlloop.ControlLoopOperation;
41 import org.onap.policy.controlloop.VirtualControlLoopEvent;
42 import org.onap.policy.controlloop.VirtualControlLoopNotification;
43 import org.onap.policy.controlloop.actorServiceProvider.spi.Actor;
44 import org.onap.policy.controlloop.policy.Policy;
45 import org.onap.policy.mso.SOCloudConfiguration;
46 import org.onap.policy.mso.SOManager;
47 import org.onap.policy.mso.SOModelInfo;
48 import org.onap.policy.mso.SORelatedInstance;
49 import org.onap.policy.mso.SORelatedInstanceListElement;
50 import org.onap.policy.mso.SORequest;
51 import org.onap.policy.mso.SORequestDetails;
52 import org.onap.policy.mso.SORequestInfo;
53 import org.onap.policy.mso.SORequestParameters;
54 import org.onap.policy.mso.util.Serialization;
55 import org.slf4j.Logger;
56 import org.slf4j.LoggerFactory;
58 import com.google.common.collect.ImmutableList;
59 import com.google.common.collect.ImmutableMap;
61 public class MSOActorServiceProvider implements Actor {
63 private static final Logger logger = LoggerFactory.getLogger(MSOActorServiceProvider.class);
65 private static String vnfItemVnfId;
67 private String vnfItemVnfType;
69 private String vnfItemModelInvariantId;
71 private String vnfItemModelVersionId;
73 private String vnfItemModelName;
75 private String vnfItemModelVersion;
77 private String vnfItemModelNameVersionId;
79 private static String serviceItemServiceInstanceId;
81 private String serviceItemPersonaModelId;
83 private String serviceItemModelName;
85 private String serviceItemModelType;
87 private String serviceItemModelVersion;
89 private String serviceItemModelNameVersionId;
91 private String vfModuleItemVfModuleName;
93 private String vfModuleItemPersonaModelId;
95 private String vfModuleItemPersonaModelVersion;
97 private String vfModuleItemModelName;
99 private String vfModuleItemModelNameVersionId;
101 private String tenantItemTenantId;
103 private String cloudRegionItemCloudRegionId;
105 private static final ImmutableList<String> recipes = ImmutableList.of(
107 private static final ImmutableMap<String, List<String>> targets = new ImmutableMap.Builder<String, List<String>>()
108 .put("VF Module Create", ImmutableList.of("VFC"))
112 public String actor() {
117 public List<String> recipes() {
118 return ImmutableList.copyOf(recipes);
122 public List<String> recipeTargets(String recipe) {
123 return ImmutableList.copyOf(targets.getOrDefault(recipe, Collections.emptyList()));
127 public List<String> recipePayloads(String recipe) {
128 return Collections.emptyList();
132 * MSOActorServiceProvider Constructor
135 public MSOActorServiceProvider() {
140 * Constructs and sends an AAI vserver Named Query
142 * @param eventRequestID
143 * @returns the response to the AAI Named Query
145 private AAINQF199ResponseWrapper AaiNamedQueryRequest(VirtualControlLoopEvent onset) {
147 // create AAI named-query request with UUID started with "F199"
148 AAINQF199Request aainqf199request = new AAINQF199Request();
149 AAINQF199QueryParameters aainqf199queryparam = new AAINQF199QueryParameters();
150 AAINQF199NamedQuery aainqf199namedquery = new AAINQF199NamedQuery();
151 AAINQF199InstanceFilters aainqf199instancefilter = new AAINQF199InstanceFilters();
154 aainqf199namedquery.namedQueryUUID = UUID.fromString("4ff56a54-9e3f-46b7-a337-07a1d3c6b469"); // UUID.fromString($params.getAaiNamedQueryUUID()) TO DO: AaiNamedQueryUUID
155 aainqf199queryparam.namedQuery = aainqf199namedquery;
156 aainqf199request.queryParameters = aainqf199queryparam;
160 Map aainqf199instancefiltermap = new HashMap();
161 Map aainqf199instancefiltermapitem = new HashMap();
162 aainqf199instancefiltermapitem.put("vserver-name", onset.AAI.get("vserver.vserver-name")); // TO DO: get vserver.vname from dcae onset.AAI.get("vserver.vserver-name")
163 aainqf199instancefiltermap.put("vserver", aainqf199instancefiltermapitem);
164 aainqf199instancefilter.instanceFilter.add(aainqf199instancefiltermap);
165 aainqf199request.instanceFilters = aainqf199instancefilter;
167 // print aainqf199request for debug
169 logger.debug("AAI Request sent:");
170 logger.debug(Serialization.gsonPretty.toJson(aainqf199request));
172 // Create AAINQF199RequestWrapper
174 AAINQF199RequestWrapper aainqf199RequestWrapper = new AAINQF199RequestWrapper(onset.requestID, aainqf199request);
176 // insert aainqf199request into memory
178 // insert(aainqf199RequestWrapper);
180 String url = "http://localhost:6666";
181 String username = "testUser";
182 String password = "testPass";
184 //***** send the request *****\\
185 AAINQF199Response aainqf199response = AAINQF199Manager.postQuery(url, username, password, // TO DO: get AAI URL, username, and password
186 aainqf199RequestWrapper.aainqf199request, onset.requestID);
188 // Check AAI response
189 if (aainqf199response == null) {
190 System.err.println("Failed to get AAI response");
192 // Fail and retract everything
195 // Create AAINQF199ResponseWrapper
196 AAINQF199ResponseWrapper aainqf199ResponseWrapper = new AAINQF199ResponseWrapper(onset.requestID, aainqf199response);
198 // insert aainqf199ResponseWrapper to memory -- Is this needed?
199 // insert(aainqf199ResponseWrapper);
202 extractSOFieldsFromNamedQuery(aainqf199ResponseWrapper, onset);
203 return aainqf199ResponseWrapper;
208 * Extract the required fields from the named query response
209 * @param namedQueryResponseWrapper
212 private void extractSOFieldsFromNamedQuery(AAINQF199ResponseWrapper namedQueryResponseWrapper, VirtualControlLoopEvent onset) {
216 setVnfItemVnfId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).genericVNF.vnfID);
217 setVnfItemVnfType(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).genericVNF.vnfType);
218 setVnfItemVnfType(vnfItemVnfType.substring(vnfItemVnfType.lastIndexOf("/")+1));
219 setVnfItemModelInvariantId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).genericVNF.personaModelId);
220 setVnfItemModelVersionId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).genericVNF.personaModelVersion);
221 setVnfItemModelName(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).extraProperties.extraProperty.get(0).propertyValue);
222 setVnfItemModelVersion(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).extraProperties.extraProperty.get(2).propertyValue);
223 setVnfItemModelNameVersionId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).extraProperties.extraProperty.get(4).propertyValue);
226 setServiceItemServiceInstanceId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).serviceInstance.serviceInstanceID);
227 setServiceItemPersonaModelId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).serviceInstance.personaModelId);
228 setServiceItemModelName(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).extraProperties.extraProperty.get(0).propertyValue);
229 setServiceItemModelType(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).extraProperties.extraProperty.get(1).propertyValue);
230 setServiceItemModelVersion(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).serviceInstance.personaModelVersion);
231 setServiceItemModelNameVersionId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).extraProperties.extraProperty.get(4).propertyValue);
233 // Find the index for base vf module and non-base vf module
235 int nonBaseIndex = -1;
236 List<AAINQF199InventoryResponseItem> inventoryItems = namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems;
237 for (AAINQF199InventoryResponseItem m : inventoryItems) {
238 if (m.vfModule != null && m.vfModule.isBaseVfModule == true) {
239 baseIndex = inventoryItems.indexOf(m);
240 } else if (m.vfModule != null && m.vfModule.isBaseVfModule == false && m.vfModule.orchestrationStatus == null) {
241 nonBaseIndex = inventoryItems.indexOf(m);
244 if (baseIndex != -1 && nonBaseIndex != -1) {
249 // Report the error if either base vf module or non-base vf module is not found
250 if (baseIndex == -1 || nonBaseIndex == -1) {
251 logger.error("Either base or non-base vf module is not found from AAI response.");
255 // This comes from the base module
256 setVfModuleItemVfModuleName(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(baseIndex).vfModule.vfModuleName);
257 setVfModuleItemVfModuleName(vfModuleItemVfModuleName.replace("Vfmodule", "vDNS"));
259 // vfModuleItem - NOT the base module
260 setVfModuleItemPersonaModelId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(nonBaseIndex).vfModule.personaModelId);
261 setVfModuleItemPersonaModelVersion(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(nonBaseIndex).vfModule.personaModelVersion);
262 setVfModuleItemModelName(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(nonBaseIndex).extraProperties.extraProperty.get(0).propertyValue);
263 setVfModuleItemModelNameVersionId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(0).items.inventoryResponseItems.get(nonBaseIndex).extraProperties.extraProperty.get(4).propertyValue);
266 setTenantItemTenantId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(1).tenant.tenantId);
269 setCloudRegionItemCloudRegionId(namedQueryResponseWrapper.aainqf199response.inventoryResponseItems.get(0).items.inventoryResponseItems.get(1).items.inventoryResponseItems.get(0).cloudRegion.cloudRegionId);
271 } catch (Exception e) {
272 logger.error(e.getMessage());
273 VirtualControlLoopNotification notification = new VirtualControlLoopNotification(onset);
274 notification.notification = ControlLoopNotificationType.REJECTED;
275 notification.message = "Exception occurred " + e.getMessage();
276 notification.policyName = onset.policyName;
277 notification.policyScope = onset.policyScope;
278 notification.policyVersion = onset.policyVersion;
281 logger.debug(Serialization.gsonPretty.toJson(notification));
282 } catch (Exception e1) {
283 logger.error("Can't deliver notification: " + notification);
284 logger.error(e1.getMessage());
287 notification.notification = ControlLoopNotificationType.FINAL_FAILURE;
288 notification.message = "Invalid named-query response from AAI";
291 logger.debug(Serialization.gsonPretty.toJson(notification));
292 } catch (Exception e1) {
293 logger.error("Can't deliver notification: " + notification);
294 logger.error(e1.getMessage());
296 // Retract everything
300 // Extracted fields should not be null
301 if (checkExtractedFields() == false) {
302 System.err.println("some fields are missing from AAI response.");
308 * Checks whether extracted fields from AAI Named Query are null or not
309 * @return false if some extracted fields are missing, true otherwise
311 private boolean checkExtractedFields() {
313 if ((getVnfItemVnfId() == null) || (getVnfItemVnfType() == null) ||
314 (getVnfItemModelInvariantId() == null) || (getVnfItemModelName() == null) ||
315 (getVnfItemModelVersion() == null) || (getVnfItemModelNameVersionId() == null) ||
316 (getServiceItemServiceInstanceId() == null) || (getServiceItemModelName() == null) ||
317 (getServiceItemModelType() == null) || (getServiceItemModelVersion() == null) ||
318 (getServiceItemModelNameVersionId() == null) || (getVfModuleItemVfModuleName() == null) ||
319 (getVfModuleItemPersonaModelId() == null) || (getVfModuleItemPersonaModelVersion() == null) ||
320 (getVfModuleItemModelName() == null) || (getVfModuleItemModelNameVersionId() == null) ||
321 (getTenantItemTenantId() == null) || (getCloudRegionItemCloudRegionId() == null)) {
328 * Construct SO Request
335 public SORequest constructRequest(VirtualControlLoopEvent onset, ControlLoopOperation operation, Policy policy) {
337 if (policy.getActor().equals("SO") && policy.getRecipe().equals("VF Module Create")) {
338 // perform named query request and handle response
339 AaiNamedQueryRequest(onset);
341 // for future extension
345 // check if the fields extracted from named query response are
346 // not null so we can proceed with SO request
347 if (checkExtractedFields() == false) {
349 System.err.println("AAI response is missing some required fields. Cannot proceed with SO Request construction.");
354 // Construct SO Request
355 SORequest request = new SORequest();
356 request.requestDetails = new SORequestDetails();
357 request.requestDetails.modelInfo = new SOModelInfo();
358 request.requestDetails.cloudConfiguration = new SOCloudConfiguration();
359 request.requestDetails.requestInfo = new SORequestInfo();
360 request.requestDetails.requestParameters = new SORequestParameters();
361 request.requestDetails.requestParameters.userParams = null;
363 // cloudConfiguration
365 request.requestDetails.cloudConfiguration.lcpCloudRegionId = getCloudRegionItemCloudRegionId();
366 request.requestDetails.cloudConfiguration.tenantId = getTenantItemTenantId();
370 request.requestDetails.modelInfo.modelType = "vfModule";
371 request.requestDetails.modelInfo.modelInvariantId = getVfModuleItemPersonaModelId();
372 request.requestDetails.modelInfo.modelNameVersionId = getVfModuleItemModelNameVersionId();
373 request.requestDetails.modelInfo.modelName = getVfModuleItemModelName();
374 request.requestDetails.modelInfo.modelVersion = getVfModuleItemPersonaModelVersion();
378 request.requestDetails.requestInfo.instanceName = getVfModuleItemVfModuleName();
379 request.requestDetails.requestInfo.source = "POLICY";
380 request.requestDetails.requestInfo.suppressRollback = false;
382 // relatedInstanceList
384 SORelatedInstanceListElement relatedInstanceListElement1 = new SORelatedInstanceListElement();
385 SORelatedInstanceListElement relatedInstanceListElement2 = new SORelatedInstanceListElement();
386 relatedInstanceListElement1.relatedInstance = new SORelatedInstance();
387 relatedInstanceListElement2.relatedInstance = new SORelatedInstance();
389 relatedInstanceListElement1.relatedInstance.instanceId = getServiceItemServiceInstanceId();
390 relatedInstanceListElement1.relatedInstance.modelInfo = new SOModelInfo();
391 relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "service";
392 relatedInstanceListElement1.relatedInstance.modelInfo.modelInvariantId = getServiceItemPersonaModelId();
393 relatedInstanceListElement1.relatedInstance.modelInfo.modelNameVersionId = getServiceItemModelNameVersionId();
394 relatedInstanceListElement1.relatedInstance.modelInfo.modelName = getServiceItemModelName();
395 relatedInstanceListElement1.relatedInstance.modelInfo.modelVersion = getServiceItemModelVersion();
397 relatedInstanceListElement2.relatedInstance.instanceId = getVnfItemVnfId();
398 relatedInstanceListElement2.relatedInstance.modelInfo = new SOModelInfo();
399 relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "vnf";
400 relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId = getVnfItemModelInvariantId();
401 relatedInstanceListElement2.relatedInstance.modelInfo.modelNameVersionId = getVnfItemModelNameVersionId();
402 relatedInstanceListElement2.relatedInstance.modelInfo.modelName = getVnfItemModelName();
403 relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = getVnfItemModelVersion();
404 relatedInstanceListElement2.relatedInstance.modelInfo.modelCustomizationName = getVnfItemVnfType();
406 request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1);
407 request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2);
409 // print MSO request for debug
411 logger.debug("MSO request sent:");
412 logger.debug(Serialization.gsonPretty.toJson(request));
419 * This method is needed to get the serviceInstanceId and vnfInstanceId which is used
420 * in the asyncMSORestCall
425 public static void sendRequest(WorkingMemory wm, Object request) {
426 SOManager Mm = new SOManager();
427 Mm.asyncMSORestCall(wm, getServiceItemServiceInstanceId(), getVnfItemVnfId(), (SORequest)request);
431 * @return the vnfItemVnfId
433 public static String getVnfItemVnfId() {
438 * @param vnfItemVnfId the vnfItemVnfId to set
440 private void setVnfItemVnfId(String vnfItemVnfId) {
441 this.vnfItemVnfId = vnfItemVnfId;
445 * @return the vnfItemVnfType
447 public String getVnfItemVnfType() {
448 return this.vnfItemVnfType;
452 * @param vnfItemVnfType the vnfItemVnfType to set
454 private void setVnfItemVnfType(String vnfItemVnfType) {
455 this.vnfItemVnfType = vnfItemVnfType;
459 * @return the vnfItemPersonaModelId
461 public String getVnfItemModelInvariantId() {
462 return this.vnfItemModelInvariantId;
466 * @param vnfItemPersonaModelId the vnfItemPersonaModelId to set
468 private void setVnfItemModelInvariantId(String vnfItemModelInvariantId) {
469 this.vnfItemModelInvariantId = vnfItemModelInvariantId;
473 * @return the vnfItemModelVersionId
475 public String getVnfItemModelVersionId() {
476 return this.vnfItemModelVersionId;
480 * @param vnfItemModelVersionId the vnfItemModelVersionId to set
482 private void setVnfItemModelVersionId(String vnfItemModelVersionId) {
483 this.vnfItemModelVersionId = vnfItemModelVersionId;
487 * @return the vnfItemModelName
489 public String getVnfItemModelName() {
490 return this.vnfItemModelName;
494 * @param vnfItemModelName the vnfItemModelName to set
496 private void setVnfItemModelName(String vnfItemModelName) {
497 this.vnfItemModelName = vnfItemModelName;
501 * @return the vnfItemModelVersion
503 public String getVnfItemModelVersion() {
504 return this.vnfItemModelVersion;
508 * @param vnfItemModelVersion the vnfItemModelVersion to set
510 private void setVnfItemModelVersion(String vnfItemModelVersion) {
511 this.vnfItemModelVersion = vnfItemModelVersion;
515 * @return the vnfItemModelNameVersionId
517 public String getVnfItemModelNameVersionId() {
518 return this.vnfItemModelNameVersionId;
522 * @param vnfItemModelNameVersionId the vnfItemModelNameVersionId to set
524 private void setVnfItemModelNameVersionId(String vnfItemModelNameVersionId) {
525 this.vnfItemModelNameVersionId = vnfItemModelNameVersionId;
529 * @return the serviceItemServiceInstanceId
531 public static String getServiceItemServiceInstanceId() {
532 return serviceItemServiceInstanceId;
536 * @param serviceItemServiceInstanceId the serviceItemServiceInstanceId to set
538 private void setServiceItemServiceInstanceId(
539 String serviceItemServiceInstanceId) {
540 this.serviceItemServiceInstanceId = serviceItemServiceInstanceId;
544 * @return the serviceItemPersonaModelId
546 public String getServiceItemPersonaModelId() {
547 return this.serviceItemPersonaModelId;
551 * @param serviceItemPersonaModelId the serviceItemPersonaModelId to set
553 private void setServiceItemPersonaModelId(String serviceItemPersonaModelId) {
554 this.serviceItemPersonaModelId = serviceItemPersonaModelId;
558 * @return the serviceItemModelName
560 public String getServiceItemModelName() {
561 return this.serviceItemModelName;
565 * @param serviceItemModelName the serviceItemModelName to set
567 private void setServiceItemModelName(String serviceItemModelName) {
568 this.serviceItemModelName = serviceItemModelName;
572 * @return the serviceItemModelType
574 public String getServiceItemModelType() {
575 return this.serviceItemModelType;
579 * @param serviceItemModelType the serviceItemModelType to set
581 private void setServiceItemModelType(String serviceItemModelType) {
582 this.serviceItemModelType = serviceItemModelType;
586 * @return the serviceItemModelVersion
588 public String getServiceItemModelVersion() {
589 return this.serviceItemModelVersion;
593 * @param serviceItemModelVersion the serviceItemModelVersion to set
595 private void setServiceItemModelVersion(String serviceItemModelVersion) {
596 this.serviceItemModelVersion = serviceItemModelVersion;
600 * @return the serviceItemModelNameVersionId
602 public String getServiceItemModelNameVersionId() {
603 return this.serviceItemModelNameVersionId;
607 * @param serviceItemModelNameVersionId the serviceItemModelNameVersionId to set
609 private void setServiceItemModelNameVersionId(
610 String serviceItemModelNameVersionId) {
611 this.serviceItemModelNameVersionId = serviceItemModelNameVersionId;
615 * @return the vfModuleItemVfModuleName
617 public String getVfModuleItemVfModuleName() {
618 return this.vfModuleItemVfModuleName;
622 * @param vfModuleItemVfModuleName the vfModuleItemVfModuleName to set
624 private void setVfModuleItemVfModuleName(String vfModuleItemVfModuleName) {
625 this.vfModuleItemVfModuleName = vfModuleItemVfModuleName;
629 * @return the vfModuleItemPersonaModelId
631 public String getVfModuleItemPersonaModelId() {
632 return this.vfModuleItemPersonaModelId;
636 * @param vfModuleItemPersonaModelId the vfModuleItemPersonaModelId to set
638 private void setVfModuleItemPersonaModelId(String vfModuleItemPersonaModelId) {
639 this.vfModuleItemPersonaModelId = vfModuleItemPersonaModelId;
643 * @return the vfModuleItemPersonaModelVersion
645 public String getVfModuleItemPersonaModelVersion() {
646 return this.vfModuleItemPersonaModelVersion;
650 * @param vfModuleItemPersonaModelVersion the vfModuleItemPersonaModelVersion to set
652 private void setVfModuleItemPersonaModelVersion(
653 String vfModuleItemPersonaModelVersion) {
654 this.vfModuleItemPersonaModelVersion = vfModuleItemPersonaModelVersion;
658 * @return the vfModuleItemModelName
660 public String getVfModuleItemModelName() {
661 return this.vfModuleItemModelName;
665 * @param vfModuleItemModelName the vfModuleItemModelName to set
667 private void setVfModuleItemModelName(String vfModuleItemModelName) {
668 this.vfModuleItemModelName = vfModuleItemModelName;
672 * @return the vfModuleItemModelNameVersionId
674 public String getVfModuleItemModelNameVersionId() {
675 return this.vfModuleItemModelNameVersionId;
679 * @param vfModuleItemModelNameVersionId the vfModuleItemModelNameVersionId to set
681 private void setVfModuleItemModelNameVersionId(
682 String vfModuleItemModelNameVersionId) {
683 this.vfModuleItemModelNameVersionId = vfModuleItemModelNameVersionId;
687 * @return the tenantItemTenantId
689 public String getTenantItemTenantId() {
690 return this.tenantItemTenantId;
694 * @param tenantItemTenantId the tenantItemTenantId to set
696 private void setTenantItemTenantId(String tenantItemTenantId) {
697 this.tenantItemTenantId = tenantItemTenantId;
701 * @return the cloudRegionItemCloudRegionId
703 public String getCloudRegionItemCloudRegionId() {
704 return this.cloudRegionItemCloudRegionId;
708 * @param cloudRegionItemCloudRegionId the cloudRegionItemCloudRegionId to set
710 private void setCloudRegionItemCloudRegionId(
711 String cloudRegionItemCloudRegionId) {
712 this.cloudRegionItemCloudRegionId = cloudRegionItemCloudRegionId;