aboutsummaryrefslogtreecommitdiffstats
path: root/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service
diff options
context:
space:
mode:
Diffstat (limited to 'plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service')
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/Clearable.java28
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CloudRegionCacheServiceProvider.java69
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CloudRegionCacheServiceProviderImpl.java471
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CustomerCacheServiceProvider.java65
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CustomerCacheServiceProviderImpl.java365
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ExternalSystemCacheServiceProvider.java48
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ExternalSystemCacheServiceProviderImpl.java209
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/GenericVnfCacheServiceProvider.java53
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/GenericVnfCacheServiceProviderImpl.java258
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/HttpRestServiceProvider.java36
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/HttpRestServiceProviderImpl.java98
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/LinesOfBusinessCacheServiceProvider.java40
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/LinesOfBusinessCacheServiceProviderImpl.java111
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/NodesCacheServiceProvider.java41
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/NodesCacheServiceProviderImpl.java104
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/OwnEntityCacheServiceProvider.java40
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/OwnEntityCacheServiceProviderImpl.java138
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PlatformCacheServiceProvider.java39
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PlatformCacheServiceProviderImpl.java110
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PnfCacheServiceProvider.java45
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PnfCacheServiceProviderImpl.java154
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ProjectCacheServiceProvider.java40
-rwxr-xr-xplans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ProjectCacheServiceProviderImpl.java140
23 files changed, 0 insertions, 2702 deletions
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/Clearable.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/Clearable.java
deleted file mode 100755
index dd4ace4d..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/Clearable.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-public interface Clearable {
- void clearAll();
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CloudRegionCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CloudRegionCacheServiceProvider.java
deleted file mode 100755
index 6facac82..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CloudRegionCacheServiceProvider.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.onap.aai.domain.yang.CloudRegion;
-import org.onap.aai.domain.yang.EsrSystemInfo;
-import org.onap.aai.domain.yang.EsrSystemInfoList;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.Tenant;
-import org.onap.aai.domain.yang.Vserver;
-import org.onap.so.aaisimulator.models.CloudRegionKey;
-import org.springframework.http.HttpHeaders;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-public interface CloudRegionCacheServiceProvider extends Clearable {
-
- void putCloudRegion(final CloudRegionKey cloudRegionKey, final CloudRegion cloudRegion);
-
- Optional<CloudRegion> getCloudRegion(final CloudRegionKey cloudRegionKey);
-
- Optional<Relationship> addRelationShip(final CloudRegionKey key, final Relationship relationship,
- final String requestUri);
-
- boolean putTenant(final CloudRegionKey key, final String tenantId, Tenant tenant);
-
- Optional<Tenant> getTenant(final CloudRegionKey key, final String tenantId);
-
- boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl, final String requestURI,
- final CloudRegionKey key, final String tenantId, final Relationship relationship);
-
- Optional<EsrSystemInfoList> getEsrSystemInfoList(final CloudRegionKey key);
-
- boolean putEsrSystemInfo(final CloudRegionKey key, final String esrSystemInfoId, final EsrSystemInfo esrSystemInfo);
-
- boolean putVserver(final CloudRegionKey key, final String tenantId, final String vServerId, Vserver vServer);
-
- Optional<Vserver> getVserver(final CloudRegionKey key, final String tenantId, final String vServerId);
-
- boolean deleteVserver(final CloudRegionKey key, final String tenantId, final String vServerId,
- final String resourceVersion);
-
- Optional<Relationship> addvServerRelationShip(final CloudRegionKey key, final String tenantId,
- final String vServerId, final Relationship relationship, final String requestUri);
-
- boolean addVServerRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl, final String requestURI, final CloudRegionKey key,
- final String tenantId, final String vServerId, final Relationship relationship);
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CloudRegionCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CloudRegionCacheServiceProviderImpl.java
deleted file mode 100755
index f1f782a0..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CloudRegionCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,471 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.CLOUD_REGION_CACHE;
-import static org.onap.so.aaisimulator.utils.Constants.BELONGS_TO;
-import static org.onap.so.aaisimulator.utils.Constants.CLOUD_REGION;
-import static org.onap.so.aaisimulator.utils.Constants.CLOUD_REGION_CLOUD_OWNER;
-import static org.onap.so.aaisimulator.utils.Constants.CLOUD_REGION_CLOUD_REGION_ID;
-import static org.onap.so.aaisimulator.utils.Constants.CLOUD_REGION_OWNER_DEFINED_TYPE;
-import static org.onap.so.aaisimulator.utils.Constants.HOSTED_ON;
-import static org.onap.so.aaisimulator.utils.Constants.LOCATED_IN;
-import static org.onap.so.aaisimulator.utils.Constants.TENANT;
-import static org.onap.so.aaisimulator.utils.Constants.TENANT_TENANT_ID;
-import static org.onap.so.aaisimulator.utils.Constants.TENANT_TENANT_NAME;
-import static org.onap.so.aaisimulator.utils.Constants.VSERVER;
-import static org.onap.so.aaisimulator.utils.Constants.VSERVER_VSERVER_ID;
-import static org.onap.so.aaisimulator.utils.Constants.VSERVER_VSERVER_NAME;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getBiDirectionalRelationShipListRelatedLink;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getRelationShipListRelatedLink;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getTargetUrl;
-import java.util.List;
-import java.util.Optional;
-import org.onap.aai.domain.yang.CloudRegion;
-import org.onap.aai.domain.yang.EsrSystemInfo;
-import org.onap.aai.domain.yang.EsrSystemInfoList;
-import org.onap.aai.domain.yang.RelatedToProperty;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.RelationshipData;
-import org.onap.aai.domain.yang.RelationshipList;
-import org.onap.aai.domain.yang.Tenant;
-import org.onap.aai.domain.yang.Tenants;
-import org.onap.aai.domain.yang.Vserver;
-import org.onap.aai.domain.yang.Vservers;
-import org.onap.so.aaisimulator.models.CloudRegionKey;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.http.HttpHeaders;
-import org.springframework.stereotype.Service;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-@Service
-public class CloudRegionCacheServiceProviderImpl extends AbstractCacheServiceProvider
- implements CloudRegionCacheServiceProvider {
-
-
-
- private static final Logger LOGGER = LoggerFactory.getLogger(CloudRegionCacheServiceProviderImpl.class);
-
- private final HttpRestServiceProvider httpRestServiceProvider;
-
- @Autowired
- public CloudRegionCacheServiceProviderImpl(final CacheManager cacheManager,
- final HttpRestServiceProvider httpRestServiceProvider) {
- super(cacheManager);
- this.httpRestServiceProvider = httpRestServiceProvider;
- }
-
- @Override
- public void putCloudRegion(final CloudRegionKey cloudRegionKey, final CloudRegion cloudRegion) {
- LOGGER.info("Adding CloudRegion to cache with key: {} ...", cloudRegionKey);
- final Cache cache = getCache(CLOUD_REGION_CACHE.getName());
- cache.put(cloudRegionKey, cloudRegion);
-
- }
-
- @Override
- public Optional<CloudRegion> getCloudRegion(final CloudRegionKey cloudRegionKey) {
- LOGGER.info("getting CloudRegion from cache using key: {}", cloudRegionKey);
- final Cache cache = getCache(CLOUD_REGION_CACHE.getName());
- final CloudRegion value = cache.get(cloudRegionKey, CloudRegion.class);
- if (value != null) {
- return Optional.of(value);
- }
- LOGGER.error("Unable to find CloudRegion in cache using key:{} ", cloudRegionKey);
- return Optional.empty();
- }
-
- @Override
- public Optional<Relationship> addRelationShip(final CloudRegionKey key, final Relationship relationship,
- final String requestUri) {
- final Optional<CloudRegion> optional = getCloudRegion(key);
- if (optional.isPresent()) {
- final CloudRegion cloudRegion = optional.get();
- RelationshipList relationshipList = cloudRegion.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- cloudRegion.setRelationshipList(relationshipList);
- }
- relationshipList.getRelationship().add(relationship);
-
- LOGGER.info("Successfully added relation to CloudRegion with key: {}", key);
-
-
- final Relationship resultantRelationship = new Relationship();
- resultantRelationship.setRelatedTo(CLOUD_REGION);
- resultantRelationship.setRelationshipLabel(LOCATED_IN);
- resultantRelationship.setRelatedLink(getBiDirectionalRelationShipListRelatedLink(requestUri));
-
- final List<RelationshipData> relationshipDataList = resultantRelationship.getRelationshipData();
- relationshipDataList.add(getRelationshipData(CLOUD_REGION_CLOUD_OWNER, cloudRegion.getCloudOwner()));
- relationshipDataList.add(getRelationshipData(CLOUD_REGION_CLOUD_REGION_ID, cloudRegion.getCloudRegionId()));
-
- final List<RelatedToProperty> relatedToPropertyList = resultantRelationship.getRelatedToProperty();
-
- final RelatedToProperty relatedToProperty = new RelatedToProperty();
- relatedToProperty.setPropertyKey(CLOUD_REGION_OWNER_DEFINED_TYPE);
- relatedToProperty.setPropertyValue(cloudRegion.getOwnerDefinedType());
- relatedToPropertyList.add(relatedToProperty);
-
- return Optional.of(resultantRelationship);
-
- }
- LOGGER.error("Unable to find CloudRegion using key: {} ...", key);
- return Optional.empty();
- }
-
- @Override
- public boolean putTenant(final CloudRegionKey key, final String tenantId, final Tenant tenant) {
- final Optional<CloudRegion> optional = getCloudRegion(key);
- if (optional.isPresent()) {
- final CloudRegion cloudRegion = optional.get();
- Tenants tenants = cloudRegion.getTenants();
- if (tenants == null) {
- tenants = new Tenants();
- cloudRegion.setTenants(tenants);
- }
-
- final Optional<Tenant> existingTenantOptional = tenants.getTenant().stream()
- .filter(existing -> existing.getTenantId() != null && existing.getTenantId().equals(tenantId))
- .findFirst();
-
- if (!existingTenantOptional.isPresent()) {
- return tenants.getTenant().add(tenant);
- }
-
- LOGGER.warn("Tenant already exists ...");
- return false;
- }
- LOGGER.error("Unable to add Tenant using key: {} ...", key);
- return false;
- }
-
- @Override
- public Optional<Tenant> getTenant(final CloudRegionKey key, final String tenantId) {
- final Optional<CloudRegion> optional = getCloudRegion(key);
- if (optional.isPresent()) {
- final CloudRegion cloudRegion = optional.get();
- final Tenants tenants = cloudRegion.getTenants();
- if (tenants != null) {
- return tenants.getTenant().stream().filter(existing -> existing.getTenantId().equals(tenantId))
- .findFirst();
- }
- }
-
- LOGGER.error("Unable to find Tenant using key: {} and tenantId: {} ...", key, tenantId);
- return Optional.empty();
- }
-
- @Override
- public boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl,
- final String requestUriString, final CloudRegionKey key, final String tenantId,
- final Relationship relationship) {
- try {
- final Optional<Tenant> optional = getTenant(key, tenantId);
- if (optional.isPresent()) {
- final Tenant tenant = optional.get();
- final String targetUrl = getTargetUrl(targetBaseUrl, relationship.getRelatedLink());
-
- final Relationship outGoingRelationShip = getRelationship(requestUriString, key, tenant);
- final Optional<Relationship> optionalRelationship = httpRestServiceProvider.put(incomingHeader,
- outGoingRelationShip, targetUrl, Relationship.class);
-
- if (optionalRelationship.isPresent()) {
- final Relationship resultantRelationship = optionalRelationship.get();
- RelationshipList relationshipList = tenant.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- tenant.setRelationshipList(relationshipList);
- }
-
- if (relationshipList.getRelationship().add(resultantRelationship)) {
- LOGGER.info("added relationship {} in cache successfully", resultantRelationship);
- return true;
- }
- }
-
-
- }
- } catch (final Exception exception) {
- LOGGER.error("Unable to add two-way relationship for CloudRegion: {} and tenant: {}", key, tenantId,
- exception);
- }
- LOGGER.error("Unable to add relationship in cache for CloudRegion: {} and tenant: {}", key, tenantId);
- return false;
- }
-
- @Override
- public Optional<EsrSystemInfoList> getEsrSystemInfoList(final CloudRegionKey key) {
- final Optional<CloudRegion> optional = getCloudRegion(key);
- if (optional.isPresent()) {
- final CloudRegion cloudRegion = optional.get();
- final EsrSystemInfoList esrSystemInfoList = cloudRegion.getEsrSystemInfoList();
- if (esrSystemInfoList != null) {
- return Optional.of(esrSystemInfoList);
- }
- }
- LOGGER.error("Unable to find EsrSystemInfoList in cache for CloudRegion: {} ", key);
-
- return Optional.empty();
- }
-
- @Override
- public boolean putEsrSystemInfo(final CloudRegionKey key, final String esrSystemInfoId,
- final EsrSystemInfo esrSystemInfo) {
- final Optional<CloudRegion> optional = getCloudRegion(key);
- if (optional.isPresent()) {
- final CloudRegion cloudRegion = optional.get();
- final List<EsrSystemInfo> esrSystemInfoList = getEsrSystemInfoList(cloudRegion);
-
- final Optional<EsrSystemInfo> existingEsrSystemInfo =
- esrSystemInfoList.stream().filter(existing -> existing.getEsrSystemInfoId() != null
- && existing.getEsrSystemInfoId().equals(esrSystemInfoId)).findFirst();
- if (existingEsrSystemInfo.isPresent()) {
- LOGGER.error("EsrSystemInfo already exists {}", existingEsrSystemInfo.get());
- return false;
- }
-
- return esrSystemInfoList.add(esrSystemInfo);
-
- }
- return false;
- }
-
- @Override
- public boolean putVserver(final CloudRegionKey key, final String tenantId, final String vServerId,
- final Vserver vServer) {
- final Optional<Tenant> optional = getTenant(key, tenantId);
- if (optional.isPresent()) {
- final Tenant tenant = optional.get();
- Vservers vServers = tenant.getVservers();
- if (vServers == null) {
- vServers = new Vservers();
- tenant.setVservers(vServers);
- }
- final List<Vserver> vServerList = vServers.getVserver();
-
- final Optional<Vserver> existingVserver = vServerList.stream()
- .filter(existing -> existing.getVserverId() != null && existing.getVserverId().equals(vServerId))
- .findFirst();
-
- if (existingVserver.isPresent()) {
- LOGGER.error("Vserver already exists {}", existingVserver.get());
- return false;
- }
- return vServerList.add(vServer);
-
- }
- return false;
- }
-
- @Override
- public Optional<Vserver> getVserver(final CloudRegionKey key, final String tenantId, final String vServerId) {
- final Optional<Tenant> optional = getTenant(key, tenantId);
- if (optional.isPresent()) {
- final Tenant tenant = optional.get();
- final Vservers vServers = tenant.getVservers();
- if (vServers != null) {
- return vServers.getVserver().stream()
- .filter(vServer -> vServer.getVserverId() != null && vServer.getVserverId().equals(vServerId))
- .findFirst();
- }
- }
- LOGGER.error("Unable to find vServer in cache ... ");
- return Optional.empty();
- }
-
- @Override
- public boolean deleteVserver(final CloudRegionKey key, final String tenantId, final String vServerId,
- final String resourceVersion) {
- final Optional<Vserver> optional = getVserver(key, tenantId, vServerId);
- if (optional.isPresent()) {
- final Optional<Tenant> tenantOptional = getTenant(key, tenantId);
- if (tenantOptional.isPresent()) {
- final Tenant tenant = tenantOptional.get();
- final Vservers vServers = tenant.getVservers();
- if (vServers != null) {
- return vServers.getVserver().removeIf(vServer -> {
- if (vServer.getVserverId() != null && vServer.getVserverId().equals(vServerId)
- && vServer.getResourceVersion() != null
- && vServer.getResourceVersion().equals(resourceVersion)) {
- LOGGER.info("Will remove Vserver from cache with vServerId: {} and resource-version: {} ",
- vServerId, vServer.getResourceVersion());
- return true;
- }
- return false;
- });
- }
-
- }
-
- }
- LOGGER.error(
- "Unable to find Vserver for using key: {}, tenant-id: {}, vserver-id: {} and resource-version: {} ...",
- key, tenantId, vServerId, resourceVersion);
-
- return false;
- }
-
- @Override
- public Optional<Relationship> addvServerRelationShip(final CloudRegionKey key, final String tenantId,
- final String vServerId, final Relationship relationship, final String requestUri) {
- final Optional<Vserver> optional = getVserver(key, tenantId, vServerId);
- if (optional.isPresent()) {
- final Vserver vServer = optional.get();
- RelationshipList relationshipList = vServer.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- vServer.setRelationshipList(relationshipList);
- }
- relationshipList.getRelationship().add(relationship);
- LOGGER.info("Successfully added relation to Vserver with key: {}, tenantId: {} and vServerId: {}", key,
- tenantId, vServerId);
- final String relatedLink = getBiDirectionalRelationShipListRelatedLink(requestUri);
-
- final Relationship resultantRelationship = getVserverRelationship(key, tenantId, vServer, relatedLink);
-
- return Optional.of(resultantRelationship);
- }
-
- LOGGER.error("Unable to find Vserver using key: {}, tenantId: {} and vServerId: {}...", key, tenantId,
- vServerId);
- return Optional.empty();
- }
-
- private Relationship getVserverRelationship(final CloudRegionKey key, final String tenantId, final Vserver vServer,
- final String relatedLink) {
- final Relationship resultantRelationship = new Relationship();
- resultantRelationship.setRelatedTo(VSERVER);
- resultantRelationship.setRelationshipLabel(HOSTED_ON);
- resultantRelationship.setRelatedLink(relatedLink);
-
- final List<RelationshipData> relationshipDataList = resultantRelationship.getRelationshipData();
- relationshipDataList.add(getRelationshipData(CLOUD_REGION_CLOUD_OWNER, key.getCloudOwner()));
- relationshipDataList.add(getRelationshipData(CLOUD_REGION_CLOUD_REGION_ID, key.getCloudRegionId()));
- relationshipDataList.add(getRelationshipData(TENANT_TENANT_ID, tenantId));
- relationshipDataList.add(getRelationshipData(VSERVER_VSERVER_ID, vServer.getVserverId()));
-
- final List<RelatedToProperty> relatedToPropertyList = resultantRelationship.getRelatedToProperty();
-
- final RelatedToProperty relatedToProperty = new RelatedToProperty();
- relatedToProperty.setPropertyKey(VSERVER_VSERVER_NAME);
- relatedToProperty.setPropertyValue(vServer.getVserverName());
- relatedToPropertyList.add(relatedToProperty);
- return resultantRelationship;
- }
-
- @Override
- public boolean addVServerRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl,
- final String requestUriString, final CloudRegionKey key, final String tenantId, final String vServerId,
- final Relationship relationship) {
- try {
- final Optional<Vserver> optional = getVserver(key, tenantId, vServerId);
- if (optional.isPresent()) {
- final Vserver vServer = optional.get();
- final String targetUrl = getTargetUrl(targetBaseUrl, relationship.getRelatedLink());
- final Relationship outGoingRelationShip = getVserverRelationship(key, tenantId, vServer,
- getRelationShipListRelatedLink(requestUriString));
- final Optional<Relationship> optionalRelationship = httpRestServiceProvider.put(incomingHeader,
- outGoingRelationShip, targetUrl, Relationship.class);
- if (optionalRelationship.isPresent()) {
- final Relationship resultantRelationship = optionalRelationship.get();
-
- RelationshipList relationshipList = vServer.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- vServer.setRelationshipList(relationshipList);
- }
-
- final Optional<Relationship> relationShipExists = relationshipList.getRelationship().stream()
- .filter(relation -> relation.getRelatedTo().equals(resultantRelationship.getRelatedTo())
- && relation.getRelatedLink().equals(resultantRelationship.getRelatedLink()))
- .findAny();
-
- if (relationShipExists.isPresent()) {
- LOGGER.info("relationship {} already exists in cache ", resultantRelationship);
- return true;
- }
-
- LOGGER.info("added relationship {} in cache successfully", resultantRelationship);
- return relationshipList.getRelationship().add(resultantRelationship);
- }
-
- }
- } catch (final Exception exception) {
- LOGGER.error("Unable to add two-way relationship for key: {}, tenantId: {} and vServerId: {}", key,
- tenantId, vServerId, exception);
- }
- LOGGER.error("Unable to add Vserver relationship for key: {}, tenantId: {} and vServerId: {}...", key, tenantId,
- vServerId);
- return false;
- }
-
- private List<EsrSystemInfo> getEsrSystemInfoList(final CloudRegion cloudRegion) {
- EsrSystemInfoList esrSystemInfoList = cloudRegion.getEsrSystemInfoList();
- if (esrSystemInfoList == null) {
- esrSystemInfoList = new EsrSystemInfoList();
- cloudRegion.setEsrSystemInfoList(esrSystemInfoList);
- }
- return esrSystemInfoList.getEsrSystemInfo();
- }
-
- private Relationship getRelationship(final String requestUriString, final CloudRegionKey cloudRegionKey,
- final Tenant tenant) {
- final Relationship relationShip = new Relationship();
- relationShip.setRelatedTo(TENANT);
- relationShip.setRelationshipLabel(BELONGS_TO);
- relationShip.setRelatedLink(getRelationShipListRelatedLink(requestUriString));
-
-
- final List<RelationshipData> relationshipDataList = relationShip.getRelationshipData();
- relationshipDataList.add(getRelationshipData(CLOUD_REGION_CLOUD_OWNER, cloudRegionKey.getCloudOwner()));
- relationshipDataList.add(getRelationshipData(CLOUD_REGION_CLOUD_REGION_ID, cloudRegionKey.getCloudRegionId()));
- relationshipDataList.add(getRelationshipData(TENANT_TENANT_ID, tenant.getTenantId()));
-
-
- final RelatedToProperty relatedToProperty = new RelatedToProperty();
- relatedToProperty.setPropertyKey(TENANT_TENANT_NAME);
- relatedToProperty.setPropertyValue(tenant.getTenantName());
- relationShip.getRelatedToProperty().add(relatedToProperty);
- return relationShip;
- }
-
- private RelationshipData getRelationshipData(final String key, final String value) {
- final RelationshipData relationshipData = new RelationshipData();
- relationshipData.setRelationshipKey(key);
- relationshipData.setRelationshipValue(value);
- return relationshipData;
- }
-
- @Override
- public void clearAll() {
- clearCache(CLOUD_REGION_CACHE.getName());
-
- }
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CustomerCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CustomerCacheServiceProvider.java
deleted file mode 100755
index 7000fb3f..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CustomerCacheServiceProvider.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.onap.aai.domain.yang.Customer;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.ServiceInstance;
-import org.onap.aai.domain.yang.ServiceInstances;
-import org.onap.aai.domain.yang.ServiceSubscription;
-
-/**
- * @author waqas.ikram@ericsson.com
- *
- */
-public interface CustomerCacheServiceProvider extends Clearable {
-
- Optional<Customer> getCustomer(final String globalCustomerId);
-
- void putCustomer(final String globalCustomerId, final Customer customer);
-
- Optional<ServiceSubscription> getServiceSubscription(final String globalCustomerId, final String serviceType);
-
- boolean putServiceSubscription(final String globalCustomerId, final String serviceType,
- final ServiceSubscription serviceSubscription);
-
- Optional<ServiceInstances> getServiceInstances(final String globalCustomerId, final String serviceType,
- final String serviceInstanceName);
-
- Optional<ServiceInstance> getServiceInstance(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId);
-
- boolean putServiceInstance(final String globalCustomerId, final String serviceType, final String serviceInstanceId,
- final ServiceInstance serviceInstance);
-
- boolean patchServiceInstance(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final ServiceInstance serviceInstance);
-
- Optional<Relationship> getRelationship(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final String vnfName);
-
- Optional<Relationship> addRelationShip(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final Relationship relationship, final String requestUri);
-
- boolean deleteSericeInstance(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final String resourceVersion);
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CustomerCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CustomerCacheServiceProviderImpl.java
deleted file mode 100755
index 7193ade1..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/CustomerCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,365 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.CUSTOMER_CACHE;
-import static org.onap.so.aaisimulator.utils.Constants.CUSTOMER_GLOBAL_CUSTOMER_ID;
-import static org.onap.so.aaisimulator.utils.Constants.GENERIC_VNF;
-import static org.onap.so.aaisimulator.utils.Constants.GENERIC_VNF_VNF_NAME;
-import static org.onap.so.aaisimulator.utils.Constants.SERVICE_INSTANCE_SERVICE_INSTANCE_ID;
-import static org.onap.so.aaisimulator.utils.Constants.SERVICE_INSTANCE_SERVICE_INSTANCE_NAME;
-import static org.onap.so.aaisimulator.utils.Constants.SERVICE_SUBSCRIPTION_SERVICE_TYPE;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getBiDirectionalRelationShipListRelatedLink;
-import java.util.List;
-import java.util.Optional;
-import java.util.stream.Collectors;
-import org.onap.aai.domain.yang.Customer;
-import org.onap.aai.domain.yang.RelatedToProperty;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.RelationshipData;
-import org.onap.aai.domain.yang.RelationshipList;
-import org.onap.aai.domain.yang.ServiceInstance;
-import org.onap.aai.domain.yang.ServiceInstances;
-import org.onap.aai.domain.yang.ServiceSubscription;
-import org.onap.aai.domain.yang.ServiceSubscriptions;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.stereotype.Service;
-
-/**
- * @author waqas.ikram@ericsson.com
- *
- */
-@Service
-public class CustomerCacheServiceProviderImpl extends AbstractCacheServiceProvider
- implements CustomerCacheServiceProvider {
- private static final Logger LOGGER = LoggerFactory.getLogger(CustomerCacheServiceProviderImpl.class);
-
- @Autowired
- public CustomerCacheServiceProviderImpl(final CacheManager cacheManager) {
- super(cacheManager);
- }
-
- @Override
- public Optional<Customer> getCustomer(final String globalCustomerId) {
- LOGGER.info("getting customer from cache using key: {}", globalCustomerId);
- final Cache cache = getCache(CUSTOMER_CACHE.getName());
- final Customer value = cache.get(globalCustomerId, Customer.class);
- if (value != null) {
- return Optional.of(value);
- }
- return Optional.empty();
- }
-
- @Override
- public void putCustomer(final String globalCustomerId, final Customer customer) {
- LOGGER.info("Adding customer: {} with key: {} in cache ...", customer, globalCustomerId);
- final Cache cache = getCache(CUSTOMER_CACHE.getName());
-
- cache.put(globalCustomerId, customer);
- }
-
- @Override
- public Optional<ServiceSubscription> getServiceSubscription(final String globalCustomerId,
- final String serviceType) {
- LOGGER.info("getting service subscription from cache for globalCustomerId: {} and serviceType: {}",
- globalCustomerId, serviceType);
-
- final Cache cache = getCache(CUSTOMER_CACHE.getName());
-
- final Customer value = cache.get(globalCustomerId, Customer.class);
-
- if (value != null) {
- return Optional.ofNullable(value.getServiceSubscriptions().getServiceSubscription().stream()
- .filter(s -> serviceType.equals(s.getServiceType())).findFirst().orElse(null));
- }
- return Optional.empty();
-
- }
-
- @Override
- public Optional<ServiceInstances> getServiceInstances(final String globalCustomerId, final String serviceType,
- final String serviceInstanceName) {
-
- final Cache cache = getCache(CUSTOMER_CACHE.getName());
- final Customer value = cache.get(globalCustomerId, Customer.class);
-
- if (value != null) {
- final Optional<ServiceSubscription> serviceSubscription = value.getServiceSubscriptions()
- .getServiceSubscription().stream().filter(s -> serviceType.equals(s.getServiceType())).findFirst();
-
- if (serviceSubscription.isPresent()) {
- LOGGER.info("Found service subscription ...");
- final ServiceInstances serviceInstances = serviceSubscription.get().getServiceInstances();
- if (serviceInstances != null) {
- final List<ServiceInstance> serviceInstancesList =
- serviceInstances.getServiceInstance().stream()
- .filter(serviceInstance -> serviceInstanceName
- .equals(serviceInstance.getServiceInstanceName()))
- .collect(Collectors.toList());
- if (serviceInstancesList != null && !serviceInstancesList.isEmpty()) {
- LOGGER.info("Found {} service instances ", serviceInstancesList.size());
- final ServiceInstances result = new ServiceInstances();
- result.getServiceInstance().addAll(serviceInstancesList);
- return Optional.of(result);
-
- }
- }
- }
- }
- return Optional.empty();
- }
-
- @Override
- public Optional<ServiceInstance> getServiceInstance(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId) {
- final Cache cache = getCache(CUSTOMER_CACHE.getName());
- final Customer value = cache.get(globalCustomerId, Customer.class);
-
- if (value != null) {
- final Optional<ServiceSubscription> serviceSubscription = value.getServiceSubscriptions()
- .getServiceSubscription().stream().filter(s -> serviceType.equals(s.getServiceType())).findFirst();
-
- if (serviceSubscription.isPresent()) {
- LOGGER.info("Found service subscription ...");
- final ServiceInstances serviceInstances = serviceSubscription.get().getServiceInstances();
- if (serviceInstances != null) {
- return Optional.ofNullable(serviceInstances.getServiceInstance().stream()
- .filter(serviceInstance -> serviceInstanceId.equals(serviceInstance.getServiceInstanceId()))
- .findFirst().orElse(null));
- }
-
- }
- }
- LOGGER.error(
- "Unable to find ServiceInstance using globalCustomerId: {}, serviceType: {} and serviceInstanceId: {} ...",
- globalCustomerId, serviceType, serviceInstanceId);
- return Optional.empty();
- }
-
- @Override
- public boolean putServiceInstance(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final ServiceInstance serviceInstance) {
- LOGGER.info("Adding serviceInstance: {} in cache ...", serviceInstance, globalCustomerId);
-
- final Cache cache = getCache(CUSTOMER_CACHE.getName());
- final Customer value = cache.get(globalCustomerId, Customer.class);
-
- if (value != null) {
- final Optional<ServiceSubscription> serviceSubscription = value.getServiceSubscriptions()
- .getServiceSubscription().stream().filter(s -> serviceType.equals(s.getServiceType())).findFirst();
-
- if (serviceSubscription.isPresent()) {
- final ServiceInstances serviceInstances = getServiceInstances(serviceSubscription);
-
-
- if (!serviceInstances.getServiceInstance().stream()
- .filter(existing -> serviceInstanceId.equals(existing.getServiceInstanceId())).findFirst()
- .isPresent()) {
- return serviceInstances.getServiceInstance().add(serviceInstance);
- }
- LOGGER.error("Service {} already exists ....", serviceInstanceId);
- return false;
- }
- LOGGER.error("Couldn't find service subscription with serviceType: {} in cache ", serviceType);
- return false;
- }
- LOGGER.error("Couldn't find Customer with key: {} in cache ", globalCustomerId);
- return false;
- }
-
- @Override
- public boolean putServiceSubscription(final String globalCustomerId, final String serviceType,
- final ServiceSubscription serviceSubscription) {
-
- final Optional<Customer> customerOptional = getCustomer(globalCustomerId);
-
- if (customerOptional.isPresent()) {
- final Customer customer = customerOptional.get();
- if (customer.getServiceSubscriptions() == null) {
- final ServiceSubscriptions serviceSubscriptions = new ServiceSubscriptions();
- customer.setServiceSubscriptions(serviceSubscriptions);
- return serviceSubscriptions.getServiceSubscription().add(serviceSubscription);
- }
-
- final Optional<ServiceSubscription> serviceSubscriptionOptional = customer.getServiceSubscriptions()
- .getServiceSubscription().stream().filter(s -> serviceType.equals(s.getServiceType())).findFirst();
-
- if (!serviceSubscriptionOptional.isPresent()) {
- return customer.getServiceSubscriptions().getServiceSubscription().add(serviceSubscription);
- }
- LOGGER.error("ServiceSubscription already exists {}", serviceSubscriptionOptional.get().getServiceType());
- return false;
- }
- LOGGER.error("Unable to add ServiceSubscription to cache becuase customer does not exits ...");
- return false;
- }
-
- @Override
- public boolean patchServiceInstance(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final ServiceInstance serviceInstance) {
- final Optional<ServiceInstance> instance = getServiceInstance(globalCustomerId, serviceType, serviceInstanceId);
- if (instance.isPresent()) {
- final ServiceInstance cachedServiceInstance = instance.get();
- LOGGER.info("Changing OrchestrationStatus from {} to {} ", cachedServiceInstance.getOrchestrationStatus(),
- serviceInstance.getOrchestrationStatus());
- cachedServiceInstance.setOrchestrationStatus(serviceInstance.getOrchestrationStatus());
- return true;
- }
- LOGGER.error("Unable to find ServiceInstance ...");
- return false;
- }
-
- @Override
- public boolean deleteSericeInstance(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final String resourceVersion) {
- final Cache cache = getCache(CUSTOMER_CACHE.getName());
- final Customer value = cache.get(globalCustomerId, Customer.class);
-
- if (value != null) {
- final Optional<ServiceSubscription> serviceSubscription = value.getServiceSubscriptions()
- .getServiceSubscription().stream().filter(s -> serviceType.equals(s.getServiceType())).findFirst();
-
- if (serviceSubscription.isPresent()) {
- LOGGER.info("Found service subscription ...");
- final ServiceInstances serviceInstances = serviceSubscription.get().getServiceInstances();
- if (serviceInstances != null) {
-
- serviceInstances.getServiceInstance().removeIf(serviceInstance -> {
- final String existingServiceInstanceId = serviceInstance.getServiceInstanceId();
- final String existingResourceVersion = serviceInstance.getResourceVersion();
- if (existingServiceInstanceId != null && existingServiceInstanceId.equals(serviceInstanceId)
- && existingResourceVersion != null && existingResourceVersion.equals(resourceVersion)) {
- LOGGER.info("Removing ServiceInstance with serviceInstanceId: {} and resourceVersion: {}",
- existingServiceInstanceId, existingResourceVersion);
- return true;
- }
- return false;
- });
-
-
- return true;
- }
-
- }
- }
- return false;
- }
-
- private ServiceInstances getServiceInstances(final Optional<ServiceSubscription> optional) {
- final ServiceSubscription serviceSubscription = optional.get();
- final ServiceInstances serviceInstances = serviceSubscription.getServiceInstances();
- if (serviceInstances == null) {
- final ServiceInstances instances = new ServiceInstances();
- serviceSubscription.setServiceInstances(instances);
- return instances;
- }
- return serviceInstances;
- }
-
- @Override
- public Optional<Relationship> getRelationship(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final String vnfName) {
- final Optional<ServiceInstance> optional = getServiceInstance(globalCustomerId, serviceType, serviceInstanceId);
-
- if (optional.isPresent()) {
- LOGGER.info("Found service instance ...");
- final ServiceInstance serviceInstance = optional.get();
- final RelationshipList relationshipList = serviceInstance.getRelationshipList();
-
- if (relationshipList != null) {
- final List<Relationship> relationship = relationshipList.getRelationship();
- return relationship.stream().filter(
- relationShip -> relationShip.getRelatedToProperty().stream().filter(relatedToProperty -> {
- final String propertyKey = relatedToProperty.getPropertyKey();
- final String propertyValue = relatedToProperty.getPropertyValue();
- return GENERIC_VNF_VNF_NAME.equals(propertyKey) && propertyValue != null
- && propertyValue.equals(vnfName);
- }).findFirst().isPresent()).findFirst();
- }
- LOGGER.warn("Relationship list is nulll ...");
- }
- LOGGER.error("Unable to RelationShip with property value: {}... ", vnfName);
-
- return Optional.empty();
- }
-
- @Override
- public Optional<Relationship> addRelationShip(final String globalCustomerId, final String serviceType,
- final String serviceInstanceId, final Relationship relationship, final String requestUri) {
- final Optional<ServiceInstance> optional = getServiceInstance(globalCustomerId, serviceType, serviceInstanceId);
- if (optional.isPresent()) {
- final ServiceInstance serviceInstance = optional.get();
- RelationshipList relationshipList = serviceInstance.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- serviceInstance.setRelationshipList(relationshipList);
- }
- relationshipList.getRelationship().add(relationship);
-
- LOGGER.info("Successfully added relation to ServiceInstance");
-
- final Relationship resultantRelationship = new Relationship();
- resultantRelationship.setRelatedTo(GENERIC_VNF);
- resultantRelationship.setRelationshipLabel(relationship.getRelationshipLabel());
- resultantRelationship.setRelatedLink(getBiDirectionalRelationShipListRelatedLink(requestUri));
-
- final List<RelationshipData> relationshipDataList = resultantRelationship.getRelationshipData();
- relationshipDataList.add(getRelationshipData(CUSTOMER_GLOBAL_CUSTOMER_ID, globalCustomerId));
- relationshipDataList.add(getRelationshipData(SERVICE_SUBSCRIPTION_SERVICE_TYPE, serviceType));
- relationshipDataList.add(getRelationshipData(SERVICE_INSTANCE_SERVICE_INSTANCE_ID, serviceInstanceId));
-
- final List<RelatedToProperty> relatedToProperty = resultantRelationship.getRelatedToProperty();
- relatedToProperty.add(getRelatedToProperty(SERVICE_INSTANCE_SERVICE_INSTANCE_NAME,
- serviceInstance.getServiceInstanceName()));
-
- return Optional.of(resultantRelationship);
-
- }
- LOGGER.error("Unable to find ServiceInstance ...");
- return Optional.empty();
- }
-
- @Override
- public void clearAll() {
- clearCache(CUSTOMER_CACHE.getName());
- }
-
- private RelatedToProperty getRelatedToProperty(final String key, final String value) {
- final RelatedToProperty relatedToProperty = new RelatedToProperty();
- relatedToProperty.setPropertyKey(key);
- relatedToProperty.setPropertyValue(value);
- return relatedToProperty;
- }
-
- private RelationshipData getRelationshipData(final String key, final String value) {
- final RelationshipData relationshipData = new RelationshipData();
- relationshipData.setRelationshipKey(key);
- relationshipData.setRelationshipValue(value);
- return relationshipData;
- }
-
-
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ExternalSystemCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ExternalSystemCacheServiceProvider.java
deleted file mode 100755
index b1f90215..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ExternalSystemCacheServiceProvider.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.List;
-import java.util.Optional;
-import org.onap.aai.domain.yang.EsrSystemInfo;
-import org.onap.aai.domain.yang.EsrSystemInfoList;
-import org.onap.aai.domain.yang.EsrVnfm;
-import org.onap.aai.domain.yang.Relationship;
-import org.springframework.http.HttpHeaders;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-public interface ExternalSystemCacheServiceProvider extends Clearable {
-
- void putEsrVnfm(final String vnfmId, final EsrVnfm esrVnfm);
-
- Optional<EsrVnfm> getEsrVnfm(final String vnfmId);
-
- List<EsrVnfm> getAllEsrVnfm();
-
- Optional<EsrSystemInfoList> getEsrSystemInfoList(final String vnfmId);
-
- boolean putEsrSystemInfo(final String vnfmId, final String esrSystemInfoId, final EsrSystemInfo esrSystemInfo);
-
- boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl, final String requestURI,
- final String vnfmId, Relationship relationship);
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ExternalSystemCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ExternalSystemCacheServiceProviderImpl.java
deleted file mode 100755
index b5b1da0f..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ExternalSystemCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,209 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.ESR_VNFM_CACHE;
-import static org.onap.so.aaisimulator.utils.Constants.DEPENDS_ON;
-import static org.onap.so.aaisimulator.utils.Constants.ESR_VNFM;
-import static org.onap.so.aaisimulator.utils.Constants.ESR_VNFM_VNFM_ID;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getRelationShipListRelatedLink;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getTargetUrl;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Optional;
-import java.util.concurrent.ConcurrentHashMap;
-import org.onap.aai.domain.yang.EsrSystemInfo;
-import org.onap.aai.domain.yang.EsrSystemInfoList;
-import org.onap.aai.domain.yang.EsrVnfm;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.RelationshipData;
-import org.onap.aai.domain.yang.RelationshipList;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.http.HttpHeaders;
-import org.springframework.stereotype.Service;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-@Service
-public class ExternalSystemCacheServiceProviderImpl extends AbstractCacheServiceProvider
- implements ExternalSystemCacheServiceProvider {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(ExternalSystemCacheServiceProviderImpl.class);
-
- private final HttpRestServiceProvider httpRestServiceProvider;
-
- @Autowired
- public ExternalSystemCacheServiceProviderImpl(final CacheManager cacheManager,
- final HttpRestServiceProvider httpRestServiceProvider) {
- super(cacheManager);
- this.httpRestServiceProvider = httpRestServiceProvider;
-
- }
-
- @Override
- public void putEsrVnfm(final String vnfmId, final EsrVnfm esrVnfm) {
- LOGGER.info("Adding esrVnfm: {} with name to cache", esrVnfm);
- final Cache cache = getCache(ESR_VNFM_CACHE.getName());
- cache.put(vnfmId, esrVnfm);
- }
-
- @Override
- public Optional<EsrVnfm> getEsrVnfm(final String vnfmId) {
- LOGGER.info("getting EsrVnfm from cache using key: {}", vnfmId);
- final Cache cache = getCache(ESR_VNFM_CACHE.getName());
- final EsrVnfm value = cache.get(vnfmId, EsrVnfm.class);
- if (value != null) {
- return Optional.of(value);
- }
- LOGGER.error("Unable to find EsrVnfm in cache using vnfmId: {} ", vnfmId);
- return Optional.empty();
- }
-
- @Override
- public List<EsrVnfm> getAllEsrVnfm() {
- final Cache cache = getCache(ESR_VNFM_CACHE.getName());
- if (cache != null) {
- final Object nativeCache = cache.getNativeCache();
- if (nativeCache instanceof ConcurrentHashMap) {
- @SuppressWarnings("unchecked")
- final ConcurrentHashMap<Object, Object> concurrentHashMap =
- (ConcurrentHashMap<Object, Object>) nativeCache;
- final List<EsrVnfm> result = new ArrayList<>();
- concurrentHashMap.keySet().stream().forEach(key -> {
- final Optional<EsrVnfm> optional = getEsrVnfm(key.toString());
- if (optional.isPresent()) {
- result.add(optional.get());
- }
- });
- return result;
- }
- }
- LOGGER.error("Unable to get all esr vnfms ... ");
- return Collections.emptyList();
-
- }
-
- @Override
- public Optional<EsrSystemInfoList> getEsrSystemInfoList(final String vnfmId) {
- final Optional<EsrVnfm> optional = getEsrVnfm(vnfmId);
- if (optional.isPresent()) {
- final EsrVnfm esrVnfm = optional.get();
- if (esrVnfm.getEsrSystemInfoList() != null) {
- return Optional.of(esrVnfm.getEsrSystemInfoList());
- }
- LOGGER.error("EsrSystemInfoList is null for vnfmId: {} ", vnfmId);
- }
- LOGGER.error("Unable to find EsrVnfm in cache using vnfmId: {} ", vnfmId);
- return Optional.empty();
- }
-
- @Override
- public boolean putEsrSystemInfo(final String vnfmId, final String esrSystemInfoId,
- final EsrSystemInfo esrSystemInfo) {
- final Optional<EsrVnfm> optional = getEsrVnfm(vnfmId);
- if (optional.isPresent()) {
- final EsrVnfm esrVnfm = optional.get();
- final List<EsrSystemInfo> esrSystemInfoList = getEsrSystemInfoList(esrVnfm);
-
- final Optional<EsrSystemInfo> existingEsrSystemInfo =
- esrSystemInfoList.stream().filter(existing -> existing.getEsrSystemInfoId() != null
- && existing.getEsrSystemInfoId().equals(esrSystemInfoId)).findFirst();
- if (existingEsrSystemInfo.isPresent()) {
- LOGGER.error("EsrSystemInfo already exists {}", existingEsrSystemInfo.get());
- return false;
- }
-
- return esrSystemInfoList.add(esrSystemInfo);
- }
- LOGGER.error("Unable to add EsrSystemInfo in cache for vnfmId: {} ", vnfmId);
- return false;
- }
-
- @Override
- public boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl,
- final String requestUriString, final String vnfmId, final Relationship relationship) {
- try {
- final Optional<EsrVnfm> optional = getEsrVnfm(vnfmId);
- if (optional.isPresent()) {
- final EsrVnfm esrVnfm = optional.get();
- final String targetUrl = getTargetUrl(targetBaseUrl, relationship.getRelatedLink());
- final Relationship outGoingRelationShip =
- getRelationship(getRelationShipListRelatedLink(requestUriString), esrVnfm);
- final Optional<Relationship> optionalRelationship = httpRestServiceProvider.put(incomingHeader,
- outGoingRelationShip, targetUrl, Relationship.class);
- if (optionalRelationship.isPresent()) {
- final Relationship resultantRelationship = optionalRelationship.get();
-
- RelationshipList relationshipList = esrVnfm.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- esrVnfm.setRelationshipList(relationshipList);
- }
- if (relationshipList.getRelationship().add(resultantRelationship)) {
- LOGGER.info("added relationship {} in cache successfully", resultantRelationship);
- return true;
- }
- }
- }
- } catch (final Exception exception) {
- LOGGER.error("Unable to add two-way relationship for vnfmId: {}", vnfmId, exception);
- }
- LOGGER.error("Unable to add relationship in cache for vnfmId: {}", vnfmId);
- return false;
- }
-
- private Relationship getRelationship(final String relatedLink, final EsrVnfm esrVnfm) {
- final Relationship relationShip = new Relationship();
- relationShip.setRelatedTo(ESR_VNFM);
- relationShip.setRelationshipLabel(DEPENDS_ON);
- relationShip.setRelatedLink(relatedLink);
-
- final RelationshipData relationshipData = new RelationshipData();
- relationshipData.setRelationshipKey(ESR_VNFM_VNFM_ID);
- relationshipData.setRelationshipValue(esrVnfm.getVnfmId());
- relationShip.getRelationshipData().add(relationshipData);
-
- return relationShip;
- }
-
- private List<EsrSystemInfo> getEsrSystemInfoList(final EsrVnfm esrVnfm) {
- EsrSystemInfoList esrSystemInfoList = esrVnfm.getEsrSystemInfoList();
- if (esrSystemInfoList == null) {
- esrSystemInfoList = new EsrSystemInfoList();
- esrVnfm.setEsrSystemInfoList(esrSystemInfoList);
- }
- return esrSystemInfoList.getEsrSystemInfo();
- }
-
- @Override
- public void clearAll() {
- clearCache(ESR_VNFM_CACHE.getName());
-
- }
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/GenericVnfCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/GenericVnfCacheServiceProvider.java
deleted file mode 100755
index 901c2594..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/GenericVnfCacheServiceProvider.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.List;
-import java.util.Optional;
-import org.onap.aai.domain.yang.GenericVnf;
-import org.onap.aai.domain.yang.Relationship;
-import org.springframework.http.HttpHeaders;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-public interface GenericVnfCacheServiceProvider extends Clearable {
-
- void putGenericVnf(final String vnfId, final GenericVnf genericVnf);
-
- Optional<GenericVnf> getGenericVnf(final String vnfId);
-
- Optional<Relationship> addRelationShip(final String vnfId, final Relationship relationship,
- final String requestURI);
-
- boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl, final String requestUriString,
- final String vnfId, final Relationship relationship);
-
- Optional<String> getGenericVnfId(final String vnfName);
-
- boolean patchGenericVnf(final String vnfId, final GenericVnf genericVnf);
-
- List<GenericVnf> getGenericVnfs(final String selflink);
-
- boolean deleteGenericVnf(final String vnfId, final String resourceVersion);
-
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/GenericVnfCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/GenericVnfCacheServiceProviderImpl.java
deleted file mode 100755
index e7a42106..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/GenericVnfCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,258 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.GENERIC_VNF_CACHE;
-import static org.onap.so.aaisimulator.utils.Constants.COMPOSED_OF;
-import static org.onap.so.aaisimulator.utils.Constants.GENERIC_VNF;
-import static org.onap.so.aaisimulator.utils.Constants.GENERIC_VNF_VNF_ID;
-import static org.onap.so.aaisimulator.utils.Constants.GENERIC_VNF_VNF_NAME;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getBiDirectionalRelationShipListRelatedLink;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getRelationShipListRelatedLink;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getTargetUrl;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Optional;
-import java.util.concurrent.ConcurrentHashMap;
-import org.onap.aai.domain.yang.GenericVnf;
-import org.onap.aai.domain.yang.RelatedToProperty;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.RelationshipData;
-import org.onap.aai.domain.yang.RelationshipList;
-import org.onap.so.aaisimulator.utils.ShallowBeanCopy;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.http.HttpHeaders;
-import org.springframework.stereotype.Service;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-@Service
-public class GenericVnfCacheServiceProviderImpl extends AbstractCacheServiceProvider
- implements GenericVnfCacheServiceProvider {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(GenericVnfCacheServiceProviderImpl.class);
-
- private final HttpRestServiceProvider httpRestServiceProvider;
-
- @Autowired
- public GenericVnfCacheServiceProviderImpl(final CacheManager cacheManager,
- final HttpRestServiceProvider httpRestServiceProvider) {
- super(cacheManager);
- this.httpRestServiceProvider = httpRestServiceProvider;
- }
-
- @Override
- public void putGenericVnf(final String vnfId, final GenericVnf genericVnf) {
- LOGGER.info("Adding customer: {} with key: {} in cache ...", genericVnf, vnfId);
- final Cache cache = getCache(GENERIC_VNF_CACHE.getName());
- cache.put(vnfId, genericVnf);
- }
-
- @Override
- public Optional<GenericVnf> getGenericVnf(final String vnfId) {
- LOGGER.info("getting GenericVnf from cache using key: {}", vnfId);
- final Cache cache = getCache(GENERIC_VNF_CACHE.getName());
- final GenericVnf value = cache.get(vnfId, GenericVnf.class);
- if (value != null) {
- return Optional.of(value);
- }
- LOGGER.error("Unable to find GenericVnf ...");
- return Optional.empty();
- }
-
- @Override
- public Optional<String> getGenericVnfId(final String vnfName) {
- final Cache cache = getCache(GENERIC_VNF_CACHE.getName());
- if (cache != null) {
- final Object nativeCache = cache.getNativeCache();
- if (nativeCache instanceof ConcurrentHashMap) {
- @SuppressWarnings("unchecked")
- final ConcurrentHashMap<Object, Object> concurrentHashMap =
- (ConcurrentHashMap<Object, Object>) nativeCache;
- for (final Object key : concurrentHashMap.keySet()) {
- final Optional<GenericVnf> optional = getGenericVnf(key.toString());
- if (optional.isPresent()) {
- final GenericVnf value = optional.get();
- final String genericVnfName = value.getVnfName();
- if (genericVnfName != null && genericVnfName.equals(vnfName)) {
- final String genericVnfId = value.getVnfId();
- LOGGER.info("Found matching vnf for name: {}, vnf-id: {}", genericVnfName, genericVnfId);
- return Optional.of(genericVnfId);
- }
- }
- }
- }
- }
- LOGGER.error("No match found for vnf name: {}", vnfName);
- return Optional.empty();
- }
-
- @Override
- public boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl,
- final String requestUriString, final String vnfId, final Relationship relationship) {
- try {
- final Optional<GenericVnf> optional = getGenericVnf(vnfId);
- if (optional.isPresent()) {
- final GenericVnf genericVnf = optional.get();
- final String targetUrl = getTargetUrl(targetBaseUrl, relationship.getRelatedLink());
- final Relationship outGoingRelationShip =
- getRelationship(getRelationShipListRelatedLink(requestUriString), genericVnf, COMPOSED_OF);
- final Optional<Relationship> optionalRelationship = httpRestServiceProvider.put(incomingHeader,
- outGoingRelationShip, targetUrl, Relationship.class);
- if (optionalRelationship.isPresent()) {
- final Relationship resultantRelationship = optionalRelationship.get();
-
- RelationshipList relationshipList = genericVnf.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- genericVnf.setRelationshipList(relationshipList);
- }
- if (relationshipList.getRelationship().add(resultantRelationship)) {
- LOGGER.info("added relationship {} in cache successfully", resultantRelationship);
- return true;
- }
- }
- }
- } catch (final Exception exception) {
- LOGGER.error("Unable to add two-way relationship for vnfId: {}", vnfId, exception);
- }
- LOGGER.error("Unable to add relationship in cache for vnfId: {}", vnfId);
- return false;
- }
-
- @Override
- public Optional<Relationship> addRelationShip(final String vnfId, final Relationship relationship,
- final String requestURI) {
- final Optional<GenericVnf> optional = getGenericVnf(vnfId);
- if (optional.isPresent()) {
- final GenericVnf genericVnf = optional.get();
- RelationshipList relationshipList = genericVnf.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- genericVnf.setRelationshipList(relationshipList);
- }
- relationshipList.getRelationship().add(relationship);
- LOGGER.info("Successfully added relation to GenericVnf for vnfId: {}", vnfId);
-
- final String relatedLink = getBiDirectionalRelationShipListRelatedLink(requestURI);
- final Relationship resultantRelationship =
- getRelationship(relatedLink, genericVnf, relationship.getRelationshipLabel());
- return Optional.of(resultantRelationship);
- }
- return Optional.empty();
- }
-
- @Override
- public boolean patchGenericVnf(final String vnfId, final GenericVnf genericVnf) {
- final Optional<GenericVnf> optional = getGenericVnf(vnfId);
- if (optional.isPresent()) {
- final GenericVnf cachedGenericVnf = optional.get();
- try {
- ShallowBeanCopy.copy(genericVnf, cachedGenericVnf);
- return true;
- } catch (final Exception exception) {
- LOGGER.error("Unable to update GenericVnf for vnfId: {}", vnfId, exception);
- }
- }
- LOGGER.error("Unable to find GenericVnf ...");
- return false;
- }
-
- @Override
- public List<GenericVnf> getGenericVnfs(final String selflink) {
- final Cache cache = getCache(GENERIC_VNF_CACHE.getName());
- if (cache != null) {
- final Object nativeCache = cache.getNativeCache();
- if (nativeCache instanceof ConcurrentHashMap) {
- @SuppressWarnings("unchecked")
- final ConcurrentHashMap<Object, Object> concurrentHashMap =
- (ConcurrentHashMap<Object, Object>) nativeCache;
- final List<GenericVnf> result = new ArrayList<>();
-
- concurrentHashMap.keySet().stream().forEach(key -> {
- final Optional<GenericVnf> optional = getGenericVnf(key.toString());
- if (optional.isPresent()) {
- final GenericVnf genericVnf = optional.get();
- final String genericVnfSelfLink = genericVnf.getSelflink();
- final String genericVnfId = genericVnf.getSelflink();
-
- if (genericVnfSelfLink != null && genericVnfSelfLink.equals(selflink)) {
- LOGGER.info("Found matching vnf for selflink: {}, vnf-id: {}", genericVnfSelfLink,
- genericVnfId);
- result.add(genericVnf);
- }
- }
- });
- return result;
- }
- }
- LOGGER.error("No match found for selflink: {}", selflink);
- return Collections.emptyList();
- }
-
- @Override
- public boolean deleteGenericVnf(final String vnfId, final String resourceVersion) {
- final Optional<GenericVnf> optional = getGenericVnf(vnfId);
- if (optional.isPresent()) {
- final GenericVnf genericVnf = optional.get();
- if (genericVnf.getResourceVersion() != null && genericVnf.getResourceVersion().equals(resourceVersion)) {
- final Cache cache = getCache(GENERIC_VNF_CACHE.getName());
- LOGGER.info("Will evict GenericVnf from cache with vnfId: {}", genericVnf.getVnfId());
- cache.evict(vnfId);
- return true;
- }
- }
- LOGGER.error("Unable to find GenericVnf for vnfId: {} and resourceVersion: {} ...", vnfId, resourceVersion);
- return false;
- }
-
- private Relationship getRelationship(final String relatedLink, final GenericVnf genericVnf,
- final String relationshipLabel) {
- final Relationship relationShip = new Relationship();
- relationShip.setRelatedTo(GENERIC_VNF);
- relationShip.setRelationshipLabel(relationshipLabel);
- relationShip.setRelatedLink(relatedLink);
-
- final RelationshipData relationshipData = new RelationshipData();
- relationshipData.setRelationshipKey(GENERIC_VNF_VNF_ID);
- relationshipData.setRelationshipValue(genericVnf.getVnfId());
- relationShip.getRelationshipData().add(relationshipData);
-
- final RelatedToProperty relatedToProperty = new RelatedToProperty();
- relatedToProperty.setPropertyKey(GENERIC_VNF_VNF_NAME);
- relatedToProperty.setPropertyValue(genericVnf.getVnfName());
- relationShip.getRelatedToProperty().add(relatedToProperty);
- return relationShip;
- }
-
- @Override
- public void clearAll() {
- clearCache(GENERIC_VNF_CACHE.getName());
- }
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/HttpRestServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/HttpRestServiceProvider.java
deleted file mode 100755
index bbcc435b..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/HttpRestServiceProvider.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.ResponseEntity;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-public interface HttpRestServiceProvider {
-
- <T> ResponseEntity<T> invokeHttpPut(final HttpEntity<Object> httpEntity, final String url, final Class<T> clazz);
-
- <T> Optional<T> put(final HttpHeaders headers, final Object object, final String url, final Class<T> clazz);
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/HttpRestServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/HttpRestServiceProviderImpl.java
deleted file mode 100755
index b96920f0..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/HttpRestServiceProviderImpl.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.onap.so.aaisimulator.exception.InvalidRestRequestException;
-import org.onap.so.aaisimulator.exception.RestProcessingException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Service;
-import org.springframework.web.client.HttpClientErrorException;
-import org.springframework.web.client.RestClientException;
-import org.springframework.web.client.RestTemplate;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-@Service
-public class HttpRestServiceProviderImpl implements HttpRestServiceProvider {
- private static final Logger LOGGER = LoggerFactory.getLogger(HttpRestServiceProviderImpl.class);
-
- private final RestTemplate restTemplate;
-
- @Autowired
- public HttpRestServiceProviderImpl(final RestTemplate restTemplate) {
- this.restTemplate = restTemplate;
- }
-
- @Override
- public <T> ResponseEntity<T> invokeHttpPut(final HttpEntity<Object> httpEntity, final String url,
- final Class<T> clazz) {
-
- final HttpMethod httpMethod = HttpMethod.PUT;
- LOGGER.trace("Will invoke HTTP {} using URL: {}", httpMethod, url);
- try {
- return restTemplate.exchange(url, httpMethod, httpEntity, clazz);
-
- } catch (final HttpClientErrorException httpClientErrorException) {
- final String message = "Unable to invoke HTTP " + httpMethod + " using url: " + url + ", Response: "
- + httpClientErrorException.getRawStatusCode();
- LOGGER.error(message, httpClientErrorException);
- final int rawStatusCode = httpClientErrorException.getRawStatusCode();
- if (rawStatusCode == HttpStatus.BAD_REQUEST.value() || rawStatusCode == HttpStatus.NOT_FOUND.value()) {
- throw new InvalidRestRequestException("No result found for given url: " + url);
- }
- throw new RestProcessingException("Unable to invoke HTTP " + httpMethod + " using URL: " + url);
-
- } catch (final RestClientException restClientException) {
- LOGGER.error("Unable to invoke HTTP POST using url: {}", url, restClientException);
- throw new RestProcessingException("Unable to invoke HTTP " + httpMethod + " using URL: " + url,
- restClientException);
- }
- }
-
- @Override
- public <T> Optional<T> put(final HttpHeaders headers, final Object object, final String url, final Class<T> clazz) {
- final HttpEntity<Object> httpEntity = new HttpEntity<Object>(object, headers);
- final ResponseEntity<T> response = invokeHttpPut(httpEntity, url, clazz);
-
- if (!response.getStatusCode().equals(HttpStatus.OK) && !response.getStatusCode().equals(HttpStatus.CREATED)
- && !response.getStatusCode().equals(HttpStatus.ACCEPTED)) {
- final String message = "Unable to invoke HTTP " + HttpMethod.PUT + " using URL: " + url
- + ", Response Code: " + response.getStatusCode();
- LOGGER.error(message);
- return Optional.empty();
- }
-
- if (response.hasBody()) {
- return Optional.of(response.getBody());
- }
- LOGGER.error("Received response without body status code: {}", response.getStatusCode());
- return Optional.empty();
- }
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/LinesOfBusinessCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/LinesOfBusinessCacheServiceProvider.java
deleted file mode 100755
index dbf5490f..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/LinesOfBusinessCacheServiceProvider.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.onap.aai.domain.yang.LineOfBusiness;
-import org.onap.aai.domain.yang.Relationship;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-public interface LinesOfBusinessCacheServiceProvider extends Clearable {
-
- void putLineOfBusiness(final String lineOfBusinessName, final LineOfBusiness lineOfBusiness);
-
- Optional<LineOfBusiness> getLineOfBusiness(final String lineOfBusinessName);
-
- Optional<Relationship> addRelationShip(final String lineOfBusinessName, final Relationship relationship,
- final String requestURI);
-
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/LinesOfBusinessCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/LinesOfBusinessCacheServiceProviderImpl.java
deleted file mode 100755
index 7614cb6d..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/LinesOfBusinessCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.LINES_OF_BUSINESS_CACHE;
-import static org.onap.so.aaisimulator.utils.Constants.LINE_OF_BUSINESS;
-import static org.onap.so.aaisimulator.utils.Constants.LINE_OF_BUSINESS_LINE_OF_BUSINESS_NAME;
-import static org.onap.so.aaisimulator.utils.Constants.USES;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getBiDirectionalRelationShipListRelatedLink;
-import java.util.Optional;
-import org.onap.aai.domain.yang.LineOfBusiness;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.RelationshipData;
-import org.onap.aai.domain.yang.RelationshipList;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.stereotype.Service;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-@Service
-public class LinesOfBusinessCacheServiceProviderImpl extends AbstractCacheServiceProvider
- implements LinesOfBusinessCacheServiceProvider {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(LinesOfBusinessCacheServiceProviderImpl.class);
-
- @Autowired
- public LinesOfBusinessCacheServiceProviderImpl(final CacheManager cacheManager) {
- super(cacheManager);
- }
-
- @Override
- public void putLineOfBusiness(final String lineOfBusinessName, final LineOfBusiness lineOfBusiness) {
- LOGGER.info("Adding LineOfBusiness to cache with key: {} ...", lineOfBusinessName);
- final Cache cache = getCache(LINES_OF_BUSINESS_CACHE.getName());
- cache.put(lineOfBusinessName, lineOfBusiness);
-
- }
-
- @Override
- public Optional<LineOfBusiness> getLineOfBusiness(final String lineOfBusinessName) {
- LOGGER.info("getting LineOfBusiness from cache using key: {}", lineOfBusinessName);
- final Cache cache = getCache(LINES_OF_BUSINESS_CACHE.getName());
- final LineOfBusiness value = cache.get(lineOfBusinessName, LineOfBusiness.class);
- if (value != null) {
- return Optional.of(value);
- }
- LOGGER.error("Unable to find LineOfBusiness in cache using key:{} ", lineOfBusinessName);
- return Optional.empty();
- }
-
- @Override
- public Optional<Relationship> addRelationShip(final String lineOfBusinessName, final Relationship relationship,
- final String requestUri) {
- final Optional<LineOfBusiness> optional = getLineOfBusiness(lineOfBusinessName);
- if (optional.isPresent()) {
- final LineOfBusiness lineOfBusiness = optional.get();
- RelationshipList relationshipList = lineOfBusiness.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- lineOfBusiness.setRelationshipList(relationshipList);
- }
- relationshipList.getRelationship().add(relationship);
-
- LOGGER.info("Successfully added relation to LineOfBusiness with name: {}", lineOfBusinessName);
- final Relationship resultantRelationship = new Relationship();
- resultantRelationship.setRelatedTo(LINE_OF_BUSINESS);
- resultantRelationship.setRelationshipLabel(USES);
- resultantRelationship.setRelatedLink(getBiDirectionalRelationShipListRelatedLink(requestUri));
-
- final RelationshipData relationshipData = new RelationshipData();
- relationshipData.setRelationshipKey(LINE_OF_BUSINESS_LINE_OF_BUSINESS_NAME);
- relationshipData.setRelationshipValue(lineOfBusiness.getLineOfBusinessName());
- resultantRelationship.getRelationshipData().add(relationshipData);
-
- return Optional.of(resultantRelationship);
-
- }
- LOGGER.error("Unable to find LineOfBusiness using name: {} ...", lineOfBusinessName);
- return Optional.empty();
- }
-
- @Override
- public void clearAll() {
- clearCache(LINES_OF_BUSINESS_CACHE.getName());
- }
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/NodesCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/NodesCacheServiceProvider.java
deleted file mode 100755
index 02327469..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/NodesCacheServiceProvider.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.onap.aai.domain.yang.GenericVnfs;
-import org.onap.aai.domain.yang.ServiceInstance;
-import org.onap.so.aaisimulator.models.NodeServiceInstance;
-
-/**
- * @author waqas.ikram@ericsson.com
- *
- */
-public interface NodesCacheServiceProvider extends Clearable {
-
- void putNodeServiceInstance(final String serviceInstanceId, final NodeServiceInstance nodeServiceInstance);
-
- Optional<NodeServiceInstance> getNodeServiceInstance(final String serviceInstanceId);
-
- Optional<GenericVnfs> getGenericVnfs(final String vnfName);
-
- Optional<ServiceInstance> getServiceInstance(final NodeServiceInstance nodeServiceInstance);
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/NodesCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/NodesCacheServiceProviderImpl.java
deleted file mode 100755
index 4ea255f5..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/NodesCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.NODES_CACHE;
-import java.util.Optional;
-import java.util.concurrent.ConcurrentHashMap;
-import org.onap.aai.domain.yang.GenericVnf;
-import org.onap.aai.domain.yang.GenericVnfs;
-import org.onap.aai.domain.yang.ServiceInstance;
-import org.onap.so.aaisimulator.models.NodeServiceInstance;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.stereotype.Service;
-
-/**
- * @author waqas.ikram@ericsson.com
- *
- */
-@Service
-public class NodesCacheServiceProviderImpl extends AbstractCacheServiceProvider implements NodesCacheServiceProvider {
- private static final Logger LOGGER = LoggerFactory.getLogger(NodesCacheServiceProviderImpl.class);
- private final GenericVnfCacheServiceProvider cacheServiceProvider;
- private final CustomerCacheServiceProvider customerCacheServiceProvider;
-
-
- @Autowired
- public NodesCacheServiceProviderImpl(final CacheManager cacheManager,
- final GenericVnfCacheServiceProvider cacheServiceProvider,
- final CustomerCacheServiceProvider customerCacheServiceProvider) {
- super(cacheManager);
- this.cacheServiceProvider = cacheServiceProvider;
- this.customerCacheServiceProvider = customerCacheServiceProvider;
- }
-
- @Override
- public void putNodeServiceInstance(final String serviceInstanceId, final NodeServiceInstance nodeServiceInstance) {
- final Cache cache = getCache(NODES_CACHE.getName());
- LOGGER.info("Adding {} to cache with key: {}...", nodeServiceInstance, serviceInstanceId);
- cache.put(serviceInstanceId, nodeServiceInstance);
- }
-
- @Override
- public Optional<NodeServiceInstance> getNodeServiceInstance(final String serviceInstanceId) {
- final Cache cache = getCache(NODES_CACHE.getName());
- final NodeServiceInstance value = cache.get(serviceInstanceId, NodeServiceInstance.class);
- if (value != null) {
- return Optional.of(value);
- }
- LOGGER.error("Unable to find node service instance in cache using key:{} ", serviceInstanceId);
- return Optional.empty();
- }
-
- @Override
- public Optional<GenericVnfs> getGenericVnfs(final String vnfName) {
- final Optional<String> genericVnfId = cacheServiceProvider.getGenericVnfId(vnfName);
- if (genericVnfId.isPresent()) {
- final Optional<GenericVnf> genericVnf = cacheServiceProvider.getGenericVnf(genericVnfId.get());
- if (genericVnf.isPresent()) {
- final GenericVnfs genericVnfs = new GenericVnfs();
- genericVnfs.getGenericVnf().add(genericVnf.get());
- return Optional.of(genericVnfs);
- }
- }
- LOGGER.error("Unable to find GenericVnf for name: {}", vnfName);
- return Optional.empty();
- }
-
- @Override
- public Optional<ServiceInstance> getServiceInstance(final NodeServiceInstance nodeServiceInstance) {
- return customerCacheServiceProvider.getServiceInstance(nodeServiceInstance.getGlobalCustomerId(),
- nodeServiceInstance.getServiceType(), nodeServiceInstance.getServiceInstanceId());
- }
-
- @Override
- public void clearAll() {
- final Cache cache = getCache(NODES_CACHE.getName());
- final ConcurrentHashMap<?, ?> nativeCache = (ConcurrentHashMap<?, ?>) cache.getNativeCache();
- LOGGER.info("Clear all entries from cahce: {}", cache.getName());
- nativeCache.clear();
- }
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/OwnEntityCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/OwnEntityCacheServiceProvider.java
deleted file mode 100755
index 394ecf17..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/OwnEntityCacheServiceProvider.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.onap.aai.domain.yang.OwningEntity;
-import org.onap.aai.domain.yang.Relationship;
-import org.springframework.http.HttpHeaders;
-
-/**
- * @author waqas.ikram@ericsson.com
- *
- */
-public interface OwnEntityCacheServiceProvider extends Clearable {
-
- void putOwningEntity(final String owningEntityId, final OwningEntity owningEntity);
-
- Optional<OwningEntity> getOwningEntity(final String owningEntityId);
-
- boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl, final String requestUriString,
- final String owningEntityId, final Relationship relationship);
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/OwnEntityCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/OwnEntityCacheServiceProviderImpl.java
deleted file mode 100755
index e351c757..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/OwnEntityCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.OWNING_ENTITY_CACHE;
-import static org.onap.so.aaisimulator.utils.Constants.BELONGS_TO;
-import static org.onap.so.aaisimulator.utils.Constants.OWNING_ENTITY;
-import static org.onap.so.aaisimulator.utils.Constants.OWNING_ENTITY_OWNING_ENTITY_ID;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getRelationShipListRelatedLink;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getTargetUrl;
-import java.util.List;
-import java.util.Optional;
-import org.onap.aai.domain.yang.OwningEntity;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.RelationshipData;
-import org.onap.aai.domain.yang.RelationshipList;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.http.HttpHeaders;
-import org.springframework.stereotype.Service;
-
-/**
- * @author waqas.ikram@ericsson.com
- *
- */
-@Service
-public class OwnEntityCacheServiceProviderImpl extends AbstractCacheServiceProvider
- implements OwnEntityCacheServiceProvider {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(OwnEntityCacheServiceProviderImpl.class);
-
- private final HttpRestServiceProvider httpRestServiceProvider;
-
-
- @Autowired
- public OwnEntityCacheServiceProviderImpl(final CacheManager cacheManager,
- final HttpRestServiceProvider httpRestServiceProvider) {
- super(cacheManager);
- this.httpRestServiceProvider = httpRestServiceProvider;
- }
-
- @Override
- public void putOwningEntity(final String owningEntityId, final OwningEntity owningEntity) {
- LOGGER.info("Adding OwningEntity: {} with name to cache", owningEntityId, owningEntity);
- final Cache cache = getCache(OWNING_ENTITY_CACHE.getName());
- cache.put(owningEntityId, owningEntity);
- }
-
- @Override
- public Optional<OwningEntity> getOwningEntity(final String owningEntityId) {
- LOGGER.info("getting OwningEntity from cache using key: {}", owningEntityId);
- final Cache cache = getCache(OWNING_ENTITY_CACHE.getName());
- final OwningEntity value = cache.get(owningEntityId, OwningEntity.class);
- if (value != null) {
- return Optional.of(value);
- }
- return Optional.empty();
- }
-
- @Override
- public boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl,
- final String requestUriString, final String owningEntityId, final Relationship relationship) {
- try {
- final Optional<OwningEntity> optional = getOwningEntity(owningEntityId);
- if (optional.isPresent()) {
- final OwningEntity owningEntity = optional.get();
- final String targetUrl = getTargetUrl(targetBaseUrl, relationship.getRelatedLink());
- final Relationship outGoingRelationShip = getRelationship(requestUriString, owningEntity);
-
- final Optional<Relationship> optionalRelationship = httpRestServiceProvider.put(incomingHeader,
- outGoingRelationShip, targetUrl, Relationship.class);
-
- if (optionalRelationship.isPresent()) {
- final Relationship resultantRelationship = optionalRelationship.get();
-
- RelationshipList relationshipList = owningEntity.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- owningEntity.setRelationshipList(relationshipList);
- }
- if (relationshipList.getRelationship().add(resultantRelationship)) {
- LOGGER.info("added relationship {} in cache successfully", resultantRelationship);
- return true;
- }
- }
- }
-
- } catch (final Exception exception) {
- LOGGER.error("Unable to add two-way relationship for owning entity id: {}", owningEntityId, exception);
- }
- LOGGER.error("Unable to add relationship in cache for owning entity id: {}", owningEntityId);
- return false;
- }
-
- @Override
- public void clearAll() {
- clearCache(OWNING_ENTITY_CACHE.getName());
- }
-
- private Relationship getRelationship(final String requestUriString, final OwningEntity owningEntity) {
- final Relationship relationShip = new Relationship();
- relationShip.setRelatedTo(OWNING_ENTITY);
- relationShip.setRelationshipLabel(BELONGS_TO);
- relationShip.setRelatedLink(getRelationShipListRelatedLink(requestUriString));
-
- final List<RelationshipData> relationshipDataList = relationShip.getRelationshipData();
-
- final RelationshipData relationshipData = new RelationshipData();
- relationshipData.setRelationshipKey(OWNING_ENTITY_OWNING_ENTITY_ID);
- relationshipData.setRelationshipValue(owningEntity.getOwningEntityId());
-
- relationshipDataList.add(relationshipData);
-
-
- return relationShip;
- }
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PlatformCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PlatformCacheServiceProvider.java
deleted file mode 100755
index 65788bcd..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PlatformCacheServiceProvider.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.onap.aai.domain.yang.Platform;
-import org.onap.aai.domain.yang.Relationship;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-public interface PlatformCacheServiceProvider extends Clearable {
-
- void putPlatform(final String platformName, final Platform platform);
-
- Optional<Platform> getPlatform(final String platformName);
-
- Optional<Relationship> addRelationShip(final String platformName, final Relationship relationship,
- final String requestUri);
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PlatformCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PlatformCacheServiceProviderImpl.java
deleted file mode 100755
index 225885ce..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PlatformCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.PLATFORM_CACHE;
-import static org.onap.so.aaisimulator.utils.Constants.PLATFORM;
-import static org.onap.so.aaisimulator.utils.Constants.PLATFORM_PLATFORM_NAME;
-import static org.onap.so.aaisimulator.utils.Constants.USES;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getBiDirectionalRelationShipListRelatedLink;
-import java.util.Optional;
-import org.onap.aai.domain.yang.Platform;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.RelationshipData;
-import org.onap.aai.domain.yang.RelationshipList;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.stereotype.Service;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-@Service
-public class PlatformCacheServiceProviderImpl extends AbstractCacheServiceProvider
- implements PlatformCacheServiceProvider {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(PlatformCacheServiceProviderImpl.class);
-
- @Autowired
- public PlatformCacheServiceProviderImpl(final CacheManager cacheManager) {
- super(cacheManager);
- }
-
- @Override
- public void putPlatform(final String platformName, final Platform platform) {
- LOGGER.info("Adding Platform to cache with key: {} ...", platformName);
- final Cache cache = getCache(PLATFORM_CACHE.getName());
- cache.put(platformName, platform);
- }
-
- @Override
- public Optional<Platform> getPlatform(final String platformName) {
- LOGGER.info("getting Platform from cache using key: {}", platformName);
- final Cache cache = getCache(PLATFORM_CACHE.getName());
- final Platform value = cache.get(platformName, Platform.class);
- if (value != null) {
- return Optional.of(value);
- }
- LOGGER.error("Unable to find Platform in cache using key:{} ", platformName);
- return Optional.empty();
- }
-
- @Override
- public Optional<Relationship> addRelationShip(final String platformName, final Relationship relationship,
- final String requestUri) {
- final Optional<Platform> optional = getPlatform(platformName);
- if (optional.isPresent()) {
- final Platform platform = optional.get();
- RelationshipList relationshipList = platform.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- platform.setRelationshipList(relationshipList);
- }
- relationshipList.getRelationship().add(relationship);
-
- LOGGER.info("Successfully add relation to Platform with name: {}", platformName);
-
- final Relationship resultantRelationship = new Relationship();
- resultantRelationship.setRelatedTo(PLATFORM);
- resultantRelationship.setRelationshipLabel(USES);
- resultantRelationship.setRelatedLink(getBiDirectionalRelationShipListRelatedLink(requestUri));
-
- final RelationshipData relationshipData = new RelationshipData();
- relationshipData.setRelationshipKey(PLATFORM_PLATFORM_NAME);
- relationshipData.setRelationshipValue(platform.getPlatformName());
- resultantRelationship.getRelationshipData().add(relationshipData);
-
- return Optional.of(resultantRelationship);
- }
- LOGGER.error("Unable to find Platform ...");
- return Optional.empty();
- }
-
- @Override
- public void clearAll() {
- clearCache(PLATFORM_CACHE.getName());
- }
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PnfCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PnfCacheServiceProvider.java
deleted file mode 100755
index 89610e04..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PnfCacheServiceProvider.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import org.onap.aai.domain.yang.v15.Pnf;
-
-import java.util.List;
-import java.util.Optional;
-
-/**
- * @author Raj Gumma (raj.gumma@est.tech)
- */
-public interface PnfCacheServiceProvider extends Clearable {
-
- void putPnf(final String pnfId, final Pnf pnf);
-
- Optional<Pnf> getPnf(final String pnfId);
-
- Optional<String> getPnfId(final String pnfName);
-
- boolean patchPnf(final String pnfId, final Pnf pnf);
-
- List<Pnf> getPnfs(final String selflink);
-
- boolean deletePnf(final String pnfId, final String resourceVersion);
-
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PnfCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PnfCacheServiceProviderImpl.java
deleted file mode 100755
index cef6c5ab..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/PnfCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import org.onap.aai.domain.yang.v15.Pnf;
-import org.onap.so.aaisimulator.utils.ShallowBeanCopy;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.stereotype.Service;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Optional;
-import java.util.concurrent.ConcurrentHashMap;
-
-import static org.onap.so.aaisimulator.utils.CacheName.PNF_CACHE;
-
-/**
- * @author Raj Gumma (raj.gumma@est.tech)
- */
-@Service
-public class PnfCacheServiceProviderImpl extends AbstractCacheServiceProvider implements PnfCacheServiceProvider {
-
-
- private static final Logger LOGGER = LoggerFactory.getLogger(PnfCacheServiceProvider.class);
-
- private final Cache cache;
-
- @Autowired
- public PnfCacheServiceProviderImpl(final CacheManager cacheManager) {
- super(cacheManager);
- cache = getCache(PNF_CACHE.getName());
- }
-
- @Override
- public void putPnf(final String pnfId, final Pnf pnf) {
- LOGGER.info("Adding pnf: {} with key: {} in cache ...", pnf, pnfId);
- cache.put(pnfId, pnf);
- }
-
- @Override
- public Optional<Pnf> getPnf(final String pnfId) {
- LOGGER.info("getting Pnf from cache using key: {}", pnfId);
- final Pnf value = cache.get(pnfId, Pnf.class);
- return Optional.ofNullable(value);
- }
-
- @Override
- public Optional<String> getPnfId(final String pnfName) {
- final Object nativeCache = cache.getNativeCache();
- if (nativeCache instanceof ConcurrentHashMap) {
- @SuppressWarnings("unchecked") final ConcurrentHashMap<Object, Object> concurrentHashMap =
- (ConcurrentHashMap<Object, Object>) nativeCache;
- for (final Object key : concurrentHashMap.keySet()) {
- final Optional<Pnf> optional = getPnf(key.toString());
- if (optional.isPresent()) {
- final String cachedPnfName = optional.get().getPnfName();
- if (cachedPnfName != null && cachedPnfName.equals(cachedPnfName)) {
- final String pnfId = optional.get().getPnfId();
- LOGGER.info("Found matching pnf for name: {}, pnf-id: {}", cachedPnfName, pnfId);
- return Optional.of(pnfId);
- }
- }
- }
- }
- return Optional.empty();
- }
-
- @Override
- public boolean patchPnf(final String pnfId, final Pnf pnf) {
- final Optional<Pnf> optional = getPnf(pnfId);
- if (optional.isPresent()) {
- final Pnf cachedPnf = optional.get();
- try {
- ShallowBeanCopy.copy(pnf, cachedPnf);
- return true;
- } catch (final Exception exception) {
- LOGGER.error("Unable to update Pnf for pnfId: {}", pnfId, exception);
- }
- }
- LOGGER.error("Unable to find Pnf for pnfID : {}", pnfId);
- return false;
- }
-
- @Override
- public List<Pnf> getPnfs(String selfLink) {
- final Object nativeCache = cache.getNativeCache();
- if (nativeCache instanceof ConcurrentHashMap) {
- @SuppressWarnings("unchecked") final ConcurrentHashMap<Object, Object> concurrentHashMap =
- (ConcurrentHashMap<Object, Object>) nativeCache;
- final List<Pnf> result = new ArrayList<>();
-
- concurrentHashMap.keySet().stream().forEach(key -> {
- final Optional<Pnf> optional = getPnf(key.toString());
- if (optional.isPresent()) {
- final Pnf pnf = optional.get();
- final String pnfSelfLink = pnf.getSelflink();
- final String pnfId = pnf.getSelflink();
-
- if (pnfSelfLink != null && pnfSelfLink.equals(selfLink)) {
- LOGGER.info("Found matching pnf for selflink: {}, pnf-id: {}", pnfSelfLink,
- pnfId);
- result.add(pnf);
- }
- }
- });
- return result;
- }
- LOGGER.error("No match found for selflink: {}", selfLink);
- return Collections.emptyList();
- }
-
- @Override
- public boolean deletePnf(String pnfId, String resourceVersion) {
- final Optional<Pnf> optional = getPnf(pnfId);
- if (optional.isPresent()) {
- final Pnf pnf = optional.get();
- if (pnf.getResourceVersion() != null && pnf.getResourceVersion().equals(resourceVersion)) {
- LOGGER.info("Will evict pnf from cache with pnfId: {}", pnf.getPnfId());
- cache.evict(pnfId);
- return true;
- }
- }
- LOGGER.error("Unable to find Pnf for pnfId: {} and resourceVersion: {} ...", pnfId, resourceVersion);
- return false;
- }
-
- @Override
- public void clearAll() {
- clearCache(cache.getName());
- }
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ProjectCacheServiceProvider.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ProjectCacheServiceProvider.java
deleted file mode 100755
index 9aad53f7..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ProjectCacheServiceProvider.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import java.util.Optional;
-import org.onap.aai.domain.yang.Project;
-import org.onap.aai.domain.yang.Relationship;
-import org.springframework.http.HttpHeaders;
-
-/**
- * @author waqas.ikram@ericsson.com
- *
- */
-public interface ProjectCacheServiceProvider extends Clearable {
-
- void putProject(final String projectName, final Project project);
-
- Optional<Project> getProject(final String projectName);
-
- boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl, final String requestUri,
- final String projectName, final Relationship relationship);
-
-}
diff --git a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ProjectCacheServiceProviderImpl.java b/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ProjectCacheServiceProviderImpl.java
deleted file mode 100755
index a2eb7ee2..00000000
--- a/plans/usecases/pnf-sw-upgrade/so/simulator/aai-simulator/src/main/java/org/onap/so/aaisimulator/service/providers/ProjectCacheServiceProviderImpl.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.aaisimulator.service.providers;
-
-import static org.onap.so.aaisimulator.utils.CacheName.PROJECT_CACHE;
-import static org.onap.so.aaisimulator.utils.Constants.PROJECT;
-import static org.onap.so.aaisimulator.utils.Constants.PROJECT_PROJECT_NAME;
-import static org.onap.so.aaisimulator.utils.Constants.USES;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getRelationShipListRelatedLink;
-import static org.onap.so.aaisimulator.utils.HttpServiceUtils.getTargetUrl;
-import java.util.List;
-import java.util.Optional;
-import org.onap.aai.domain.yang.Project;
-import org.onap.aai.domain.yang.Relationship;
-import org.onap.aai.domain.yang.RelationshipData;
-import org.onap.aai.domain.yang.RelationshipList;
-import org.onap.so.simulator.cache.provider.AbstractCacheServiceProvider;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.Cache;
-import org.springframework.cache.CacheManager;
-import org.springframework.http.HttpHeaders;
-import org.springframework.stereotype.Service;
-
-/**
- * @author waqas.ikram@ericsson.com
- *
- */
-@Service
-public class ProjectCacheServiceProviderImpl extends AbstractCacheServiceProvider
- implements ProjectCacheServiceProvider {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(ProjectCacheServiceProviderImpl.class);
-
- private final HttpRestServiceProvider httpRestServiceProvider;
-
- @Autowired
- public ProjectCacheServiceProviderImpl(final CacheManager cacheManager,
- final HttpRestServiceProvider httpRestServiceProvider) {
- super(cacheManager);
- this.httpRestServiceProvider = httpRestServiceProvider;
- }
-
- @Override
- public void putProject(final String projectName, final Project project) {
- LOGGER.info("Adding project: {} with name to cache", project, projectName);
- final Cache cache = getCache(PROJECT_CACHE.getName());
- cache.put(projectName, project);
- }
-
-
- @Override
- public Optional<Project> getProject(final String projectName) {
- LOGGER.info("getting project from cache using key: {}", projectName);
- final Cache cache = getCache(PROJECT_CACHE.getName());
- final Project value = cache.get(projectName, Project.class);
- if (value != null) {
- return Optional.of(value);
- }
- return Optional.empty();
- }
-
- @Override
- public boolean addRelationShip(final HttpHeaders incomingHeader, final String targetBaseUrl,
- final String requestUriString, final String projectName, final Relationship relationship) {
- try {
- final Optional<Project> optional = getProject(projectName);
-
- if (optional.isPresent()) {
- final Project project = optional.get();
- final String targetUrl = getTargetUrl(targetBaseUrl, relationship.getRelatedLink());
- final Relationship outGoingRelationShip = getRelationship(requestUriString, project);
-
- final Optional<Relationship> optionalRelationship = httpRestServiceProvider.put(incomingHeader,
- outGoingRelationShip, targetUrl, Relationship.class);
-
- if (optionalRelationship.isPresent()) {
- final Relationship resultantRelationship = optionalRelationship.get();
-
- RelationshipList relationshipList = project.getRelationshipList();
- if (relationshipList == null) {
- relationshipList = new RelationshipList();
- project.setRelationshipList(relationshipList);
- }
- if (relationshipList.getRelationship().add(resultantRelationship)) {
- LOGGER.info("added relationship {} in cache successfully", resultantRelationship);
- return true;
- }
- }
- }
- } catch (final Exception exception) {
- LOGGER.error("Unable to add two-way relationship for project name: {}", projectName, exception);
- }
- LOGGER.error("Unable to add relationship in cache for project name: {}", projectName);
- return false;
- }
-
- @Override
- public void clearAll() {
- clearCache(PROJECT_CACHE.getName());
- }
-
- private Relationship getRelationship(final String requestUriString, final Project project) {
-
- final Relationship relationShip = new Relationship();
- relationShip.setRelatedTo(PROJECT);
- relationShip.setRelationshipLabel(USES);
- relationShip.setRelatedLink(getRelationShipListRelatedLink(requestUriString));
-
- final List<RelationshipData> relationshipDataList = relationShip.getRelationshipData();
-
- final RelationshipData relationshipData = new RelationshipData();
- relationshipData.setRelationshipKey(PROJECT_PROJECT_NAME);
- relationshipData.setRelationshipValue(project.getProjectName());
-
- relationshipDataList.add(relationshipData);
-
-
- return relationShip;
- }
-
-}