aboutsummaryrefslogtreecommitdiffstats
path: root/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AaiQueryTaskImpl.java
diff options
context:
space:
mode:
authorsangeeta.bellara <sangeeta.bellara@t-systems.com>2023-03-09 22:13:03 +0530
committerSangeeta Bellara <sangeeta.bellara@t-systems.com>2023-03-28 06:26:20 +0000
commite1e4154a3914f0878e26ea2e1683ebdfe507f5a9 (patch)
tree6dc21739b666f486daab905de63f2ca5e1aa72d9 /prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AaiQueryTaskImpl.java
parentfb93a46a63c859434cecdbd07c0e08531c366855 (diff)
PRH Code Additions for Early PNF registrations1.9.0
Issue-ID: DCAEGEN2-3312 Change-Id: Id9b1ca83390af3675e26fc61ccc8d12611ab8ddf Signed-off-by: sangeeta.bellara <sangeeta.bellara@t-systems.com> Signed-off-by: sangeeta.bellara <sangeeta.bellara@t-systems.com> Change-Id: I9bc25bc1343c40aca5644de3fd30f7c2142c1a47 Signed-off-by: sangeeta.bellara <sangeeta.bellara@t-systems.com>
Diffstat (limited to 'prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AaiQueryTaskImpl.java')
-rw-r--r--prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AaiQueryTaskImpl.java27
1 files changed, 26 insertions, 1 deletions
diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AaiQueryTaskImpl.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AaiQueryTaskImpl.java
index 3db4887a..4a7eef58 100644
--- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AaiQueryTaskImpl.java
+++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AaiQueryTaskImpl.java
@@ -3,10 +3,10 @@
* PNF-REGISTRATION-HANDLER
* ================================================================================
* Copyright (C) 2018 NOKIA Intellectual Property. All rights reserved.
+ * Copyright (C) 2023 Deutsche Telekom Intellectual Property. All rights reserved.
* ================================================================================
* 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
*
@@ -35,6 +35,8 @@ import org.onap.dcaegen2.services.prh.model.RelationshipDict;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import reactor.core.publisher.Mono;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
@Component
public class AaiQueryTaskImpl implements AaiQueryTask {
@@ -44,6 +46,7 @@ public class AaiQueryTaskImpl implements AaiQueryTask {
static final String SERVICE_TYPE = "service-subscription.service-type";
static final String SERVICE_INSTANCE_ID = "service-instance.service-instance-id";
+ private static final Logger LOGGER = LoggerFactory.getLogger(AaiQueryTaskImpl.class);
private final AaiHttpClient<ConsumerDmaapModel, AaiPnfResultModel> getPnfModelClient;
private final AaiHttpClient<AaiServiceInstanceQueryModel, AaiServiceInstanceResultModel> getServiceClient;
@@ -55,8 +58,11 @@ public class AaiQueryTaskImpl implements AaiQueryTask {
this.getServiceClient = getServiceClient;
}
+
+
@Override
public Mono<Boolean> execute(ConsumerDmaapModel aaiModel) {
+
return getPnfModelClient
.getAaiResponse(aaiModel)
.flatMap(this::checkIfPnfHasRelationToService)
@@ -65,7 +71,22 @@ public class AaiQueryTaskImpl implements AaiQueryTask {
.defaultIfEmpty(false);
}
+
+ // Added by DTAG, March 2023
+ @Override
+ public Mono<ConsumerDmaapModel> findPnfinAAI(final ConsumerDmaapModel model) {
+
+ return getPnfModelClient
+ .getAaiResponse(model)
+ .flatMap(aaiModel -> Mono.just(model));
+
+
+ }
+
+
+
private Mono<AaiServiceInstanceQueryModel> checkIfPnfHasRelationToService(final AaiPnfResultModel model) {
+
return Mono
.justOrEmpty(model.getRelationshipList())
.map(this::findRelatedTo)
@@ -88,10 +109,12 @@ public class AaiQueryTaskImpl implements AaiQueryTask {
}
private Boolean checkIfRelatedServiceInstanceIsActive(final AaiServiceInstanceResultModel model) {
+
return ACTIVE_STATUS.equalsIgnoreCase(model.getOrchestrationStatus());
}
private Optional<RelationshipDict> findRelatedTo(final Relationship data) {
+
return Optional.ofNullable(data.getRelationship())
.map(Stream::of)
.orElseGet(Stream::empty)
@@ -101,10 +124,12 @@ public class AaiQueryTaskImpl implements AaiQueryTask {
}
private Optional<String> findValue(final List<RelationshipData> data, final String key) {
+
return data
.stream()
.filter(y -> key.equals(y.getRelationshipKey()))
.findFirst()
.map(RelationshipData::getRelationshipValue);
}
+
}