From 55ed528ac81e302dd779049cf3cb017be97eff33 Mon Sep 17 00:00:00 2001 From: Lukasz Rajewski Date: Wed, 20 Oct 2021 23:48:07 +0200 Subject: Fix issue with attempt of delete of non-existing instance Issue-ID: SO-3404 Signed-off-by: Lukasz Rajewski Change-Id: I4735737380efaf7ba4cf40f6280a7dc744f98c88 --- .../main/java/org/onap/so/adapters/cnf/rest/CnfAdapterRest.java | 5 +++++ .../java/org/onap/so/adapters/cnf/service/aai/AaiService.java | 9 ++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/so-cnf-adapter-application/src/main/java/org/onap/so/adapters/cnf/rest/CnfAdapterRest.java b/so-cnf-adapter-application/src/main/java/org/onap/so/adapters/cnf/rest/CnfAdapterRest.java index b870a1d..9aaf439 100644 --- a/so-cnf-adapter-application/src/main/java/org/onap/so/adapters/cnf/rest/CnfAdapterRest.java +++ b/so-cnf-adapter-application/src/main/java/org/onap/so/adapters/cnf/rest/CnfAdapterRest.java @@ -283,6 +283,11 @@ public class CnfAdapterRest { throws JsonParseException, JsonMappingException, IOException { logger.info("deleteInstanceByInstanceId called."); + if (instanceID == null || instanceID.isEmpty() || instanceID.equals("null")) { + //we skip deletion of instance that was not created properly and instance id was not stored in AAI + logger.warn("Undefined instance ID delete attempt. Skipping delete"); + return ""; + } return cnfAdapterService.deleteInstanceByInstanceId(instanceID); } diff --git a/so-cnf-adapter-application/src/main/java/org/onap/so/adapters/cnf/service/aai/AaiService.java b/so-cnf-adapter-application/src/main/java/org/onap/so/adapters/cnf/service/aai/AaiService.java index db8998e..9c80bf0 100644 --- a/so-cnf-adapter-application/src/main/java/org/onap/so/adapters/cnf/service/aai/AaiService.java +++ b/so-cnf-adapter-application/src/main/java/org/onap/so/adapters/cnf/service/aai/AaiService.java @@ -60,7 +60,14 @@ public class AaiService { } public void aaiDelete(AaiRequest aaiRequest) throws BadResponseException { - IAaiRepository aaiRepository = IAaiRepository.instance(configuration.isEnabled()); + String instanceID = aaiRequest.getInstanceId(); + boolean enabled = configuration.isEnabled(); + if (instanceID == null || instanceID.isEmpty() || instanceID.equals("null")) { + //we skip deletion of resources instance that was not created properly and instance id was not stored in AAI + log.warn("Undefined instance ID aai-delete attempt. Skipping aai-delete"); + enabled = false; + } + IAaiRepository aaiRepository = IAaiRepository.instance(enabled); aaiRepository.delete(aaiRequest, List.of()); aaiRepository.commit(false); } -- cgit 1.2.3-korg