From 87bb08875e573f84c880ba26e7f74f8724e24177 Mon Sep 17 00:00:00 2001 From: Ittay Stern Date: Sun, 26 May 2019 19:21:47 +0300 Subject: Differentiate cloudRegions with same name and different owner Replaces change I22c0b07173950c253a9272b8a96ab63e006efa49 Resolves defect: Issue-ID: VID-482 Cherry-picked from change: I38c2f6a86a044297b1b76c1316e50cacb0264da9 Signed-off-by: Ittay Stern Change-Id: I2ecf07aa5614e94fce49eeaa7fef71b683f6c3c8 --- .../java/org/onap/vid/services/CloudOwnerServiceImpl.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'vid-app-common/src/main/java/org/onap') diff --git a/vid-app-common/src/main/java/org/onap/vid/services/CloudOwnerServiceImpl.java b/vid-app-common/src/main/java/org/onap/vid/services/CloudOwnerServiceImpl.java index d885f205e..4213255e1 100644 --- a/vid-app-common/src/main/java/org/onap/vid/services/CloudOwnerServiceImpl.java +++ b/vid-app-common/src/main/java/org/onap/vid/services/CloudOwnerServiceImpl.java @@ -73,22 +73,24 @@ public class CloudOwnerServiceImpl implements CloudOwnerService { } } - protected void enrichRequestWithCloudOwnerByAdditionalProperties(RequestDetails msoRequest) { - String lcpCloudRegionId = null; + private void enrichRequestWithCloudOwnerByAdditionalProperties(RequestDetails msoRequest) { + final Map cloudConfiguration; + final String lcpCloudRegionId; try { + cloudConfiguration = msoRequest.extractValueByPathUsingAdditionalProperties(CLOUD_CONFIGURATION_PATH, Map.class); lcpCloudRegionId = msoRequest.extractValueByPathUsingAdditionalProperties(LCP_CLOUD_REGION_ID_PATH, String.class); } catch (NotFoundException exception) { LOGGER.debug("Can't find lcp region in RequestDetails. Assume no cloudOwner enrichment is needed. Reason: ", exception); return; } - String cloudOwner = aaiClient.getCloudOwnerByCloudRegionId(lcpCloudRegionId); - msoRequest.extractValueByPathUsingAdditionalProperties(CLOUD_CONFIGURATION_PATH, Map.class).put("cloudOwner", cloudOwner); + + cloudConfiguration.computeIfAbsent("cloudOwner", k -> aaiClient.getCloudOwnerByCloudRegionId(lcpCloudRegionId)); } @Override public void enrichCloudConfigurationWithCloudOwner(CloudConfiguration cloudConfiguration, String lcpCloudRegionId) { - if (featureManager.isActive(Features.FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST)) { + if (StringUtils.isEmpty(cloudConfiguration.getCloudOwner()) && featureManager.isActive(Features.FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST)) { String cloudOwner = aaiClient.getCloudOwnerByCloudRegionId(lcpCloudRegionId); cloudConfiguration.setCloudOwner(cloudOwner); } -- cgit 1.2.3-korg