From dac9d9dadd894f3eab798889a88f060b8c901f83 Mon Sep 17 00:00:00 2001 From: ToineSiebelink Date: Thu, 4 Sep 2025 11:49:28 +0100 Subject: [PATCH] Fix issue with package name cmnotificationsubscription - removed _1_0_0 postfix (inconsistent with others) - renamed/moved to ../datajobs/subscriptions Issue-ID: CPS-2941 Change-Id: I2d461ecabc8d404bb9e936ef0a528eb98735ac03 Signed-off-by: ToineSiebelink --- .../ncmp/avc/dmi-in-event-schema-1.0.0.json | 4 +- .../ncmp/avc/dmi-out-event-schema-1.0.0.json | 4 +- .../ncmp/avc/ncmp-in-event-schema-1.0.0.json | 4 +- .../ncmp/avc/ncmp-out-event-schema-1.0.0.json | 4 +- ...job-subscription-dmi-in-event-schema-1.0.0.json | 4 +- ...bscription-operation-in-event-schema-1.0.0.json | 5 +- .../subscription}/cache/CmSubscriptionConfig.java | 8 +- .../subscription}/cache/DmiCacheHandler.java | 115 ++++++++++----------- .../subscription}/cmavc/CmAvcEventConsumer.java | 4 +- .../subscription}/cmavc/CmAvcEventService.java | 20 ++-- .../subscription}/cmavc/CmAvcOperationEnum.java | 2 +- .../dmi/DmiCmSubscriptionDetailsPerDmiMapper.java | 33 +++--- .../subscription}/dmi/DmiInEventMapper.java | 26 ++--- .../subscription}/dmi/DmiInEventProducer.java | 20 ++-- .../subscription}/dmi/DmiOutEventConsumer.java | 33 +++--- .../subscription}/models/CmSubscriptionStatus.java | 2 +- .../models/DmiCmSubscriptionDetails.java | 2 +- .../subscription}/models/DmiCmSubscriptionKey.java | 5 +- .../models/DmiCmSubscriptionPredicate.java | 2 +- .../models/DmiCmSubscriptionTuple.java | 6 +- .../ncmp/CmSubscriptionComparator.java | 22 ++-- .../subscription}/ncmp/CmSubscriptionHandler.java | 8 +- .../ncmp/CmSubscriptionHandlerImpl.java | 108 +++++++++---------- .../subscription}/ncmp/NcmpInEventConsumer.java | 19 ++-- .../subscription}/ncmp/NcmpOutEventMapper.java | 34 +++--- .../subscription}/ncmp/NcmpOutEventProducer.java | 40 +++---- .../ncmp/NcmpOutEventPublishingTask.java | 16 +-- .../CmDataJobSubscriptionPersistenceService.java | 62 +++++------ .../resources/models/dmi-registry@2025-07-22.yang | 2 +- .../cache/CmSubscriptionConfigSpec.groovy | 8 +- .../subscription}/cache/DmiCacheHandlerSpec.groovy | 42 ++++---- .../cmavc/CmAvcEventConsumerSpec.groovy | 8 +- .../cmavc/CmAvcEventServiceSpec.groovy | 2 +- ...DmiCmSubscriptionDetailsPerDmiMapperSpec.groovy | 4 +- .../subscription}/dmi/DmiInEventMapperSpec.groovy | 6 +- .../dmi/DmiInEventProducerSpec.groovy | 8 +- .../dmi/DmiOutEventConsumerSpec.groovy | 20 ++-- .../ncmp/CmSubscriptionComparatorSpec.groovy | 6 +- .../ncmp/CmSubscriptionHandlerImplSpec.groovy | 40 +++---- .../ncmp/NcmpInEventConsumerSpec.groovy | 4 +- .../ncmp/NcmpOutEventMapperSpec.groovy | 12 +-- .../ncmp/NcmpOutEventProducerSpec.groovy | 10 +- .../CmSubscriptionPersistenceServiceSpec.groovy | 26 ++--- .../ncmp/avc/ncmp-in-event-schema-1.0.0.json | 9 +- .../ncmp/avc/ncmp-out-event-schema-1.0.0.json | 4 +- 45 files changed, 412 insertions(+), 411 deletions(-) rename cps-ncmp-events/src/main/resources/schemas/ncmp/{cmnotificationsubscription => datajobs.subscription}/data-job-subscription-dmi-in-event-schema-1.0.0.json (95%) rename cps-ncmp-events/src/main/resources/schemas/ncmp/{cmnotificationsubscription => datajobs.subscription}/data-job-subscription-operation-in-event-schema-1.0.0.json (94%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cache/CmSubscriptionConfig.java (86%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cache/DmiCacheHandler.java (65%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cmavc/CmAvcEventConsumer.java (96%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cmavc/CmAvcEventService.java (89%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cmavc/CmAvcOperationEnum.java (96%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/dmi/DmiCmSubscriptionDetailsPerDmiMapper.java (72%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/dmi/DmiInEventMapper.java (78%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/dmi/DmiInEventProducer.java (79%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/dmi/DmiOutEventConsumer.java (80%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/models/CmSubscriptionStatus.java (93%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/models/DmiCmSubscriptionDetails.java (94%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/models/DmiCmSubscriptionKey.java (92%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/models/DmiCmSubscriptionPredicate.java (95%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/models/DmiCmSubscriptionTuple.java (81%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/CmSubscriptionComparator.java (75%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/CmSubscriptionHandler.java (87%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/CmSubscriptionHandlerImpl.java (69%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/NcmpInEventConsumer.java (73%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/NcmpOutEventMapper.java (76%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/NcmpOutEventProducer.java (80%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/NcmpOutEventPublishingTask.java (75%) rename cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/utils/CmDataJobSubscriptionPersistenceService.java (77%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cache/CmSubscriptionConfigSpec.groovy (90%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cache/DmiCacheHandlerSpec.groovy (88%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cmavc/CmAvcEventConsumerSpec.groovy (96%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/cmavc/CmAvcEventServiceSpec.groovy (99%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/dmi/DmiCmSubscriptionDetailsPerDmiMapperSpec.groovy (94%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/dmi/DmiInEventMapperSpec.groovy (89%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/dmi/DmiInEventProducerSpec.groovy (91%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/dmi/DmiOutEventConsumerSpec.groovy (87%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/CmSubscriptionComparatorSpec.groovy (91%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/CmSubscriptionHandlerImplSpec.groovy (88%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/NcmpInEventConsumerSpec.groovy (94%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/NcmpOutEventMapperSpec.groovy (85%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/ncmp/NcmpOutEventProducerSpec.groovy (94%) rename cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/{cmnotificationsubscription => datajobs/subscription}/utils/CmSubscriptionPersistenceServiceSpec.groovy (96%) diff --git a/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/dmi-in-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/dmi-in-event-schema-1.0.0.json index fb86c5ddb4..b9c949177f 100644 --- a/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/dmi-in-event-schema-1.0.0.json +++ b/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/dmi-in-event-schema-1.0.0.json @@ -6,7 +6,7 @@ "DmiInEvent": { "description": "The payload for cm notification subscription event incoming message from NCMP.", "type": "object", - "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.DmiInEvent", + "javaType": "org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.DmiInEvent", "additionalProperties": false, "properties": { "data": { @@ -90,4 +90,4 @@ ] } } -} \ No newline at end of file +} diff --git a/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/dmi-out-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/dmi-out-event-schema-1.0.0.json index b47a70cd90..f9be82ac5f 100644 --- a/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/dmi-out-event-schema-1.0.0.json +++ b/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/dmi-out-event-schema-1.0.0.json @@ -7,7 +7,7 @@ "description": "The payload for cm notification subscription merge event coming out from DMI Plugin.", "type": "object", "additionalProperties": false, - "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.dmi_to_ncmp.DmiOutEvent", + "javaType": "org.onap.cps.ncmp.impl.datajobs.subscription.dmi_to_ncmp.DmiOutEvent", "properties": { "data": { "$ref": "#/definitions/Data" @@ -40,4 +40,4 @@ "title": "Data" } } -} \ No newline at end of file +} diff --git a/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/ncmp-in-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/ncmp-in-event-schema-1.0.0.json index d4e8519956..9177d0ed04 100644 --- a/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/ncmp-in-event-schema-1.0.0.json +++ b/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/ncmp-in-event-schema-1.0.0.json @@ -5,7 +5,7 @@ "definitions": { "NcmpInEvent": { "description": "The payload for subscription merge event.", - "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.NcmpInEvent", + "javaType": "org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.NcmpInEvent", "properties": { "data": { "properties": { @@ -70,4 +70,4 @@ ] } } -} \ No newline at end of file +} diff --git a/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/ncmp-out-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/ncmp-out-event-schema-1.0.0.json index f1dabc17a3..86c8ccb8ba 100644 --- a/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/ncmp-out-event-schema-1.0.0.json +++ b/cps-ncmp-events/src/main/resources/schemas/ncmp/avc/ncmp-out-event-schema-1.0.0.json @@ -6,7 +6,7 @@ "NcmpOutEvent": { "type": "object", "description": "The payload applied cm subscription merge event coming out from NCMP.", - "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent", + "javaType": "org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent", "additionalProperties": false, "properties": { "data": { @@ -54,4 +54,4 @@ } -} \ No newline at end of file +} diff --git a/cps-ncmp-events/src/main/resources/schemas/ncmp/cmnotificationsubscription/data-job-subscription-dmi-in-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/ncmp/datajobs.subscription/data-job-subscription-dmi-in-event-schema-1.0.0.json similarity index 95% rename from cps-ncmp-events/src/main/resources/schemas/ncmp/cmnotificationsubscription/data-job-subscription-dmi-in-event-schema-1.0.0.json rename to cps-ncmp-events/src/main/resources/schemas/ncmp/datajobs.subscription/data-job-subscription-dmi-in-event-schema-1.0.0.json index 88d631cbec..a66da54dbb 100644 --- a/cps-ncmp-events/src/main/resources/schemas/ncmp/cmnotificationsubscription/data-job-subscription-dmi-in-event-schema-1.0.0.json +++ b/cps-ncmp-events/src/main/resources/schemas/ncmp/datajobs.subscription/data-job-subscription-dmi-in-event-schema-1.0.0.json @@ -6,7 +6,7 @@ "DmiInEvent": { "description": "The payload for cm notification data job subscription event incoming message from NCMP.", "type": "object", - "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.DataJobSubscriptionDmiInEvent", + "javaType": "org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.DataJobSubscriptionDmiInEvent", "properties": { "data": { "$ref": "#/definitions/data" @@ -80,4 +80,4 @@ "cmHandles" ] } -} \ No newline at end of file +} diff --git a/cps-ncmp-events/src/main/resources/schemas/ncmp/cmnotificationsubscription/data-job-subscription-operation-in-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/ncmp/datajobs.subscription/data-job-subscription-operation-in-event-schema-1.0.0.json similarity index 94% rename from cps-ncmp-events/src/main/resources/schemas/ncmp/cmnotificationsubscription/data-job-subscription-operation-in-event-schema-1.0.0.json rename to cps-ncmp-events/src/main/resources/schemas/ncmp/datajobs.subscription/data-job-subscription-operation-in-event-schema-1.0.0.json index c6dfceab7d..452802bd28 100644 --- a/cps-ncmp-events/src/main/resources/schemas/ncmp/cmnotificationsubscription/data-job-subscription-operation-in-event-schema-1.0.0.json +++ b/cps-ncmp-events/src/main/resources/schemas/ncmp/datajobs.subscription/data-job-subscription-operation-in-event-schema-1.0.0.json @@ -1,9 +1,8 @@ - { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Data job subscription operation event format", "type": "object", - "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.DataJobSubscriptionOperationInEvent", + "javaType": "org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.DataJobSubscriptionOperationInEvent", "properties": { "eventType": { "description": "the type of the event", @@ -68,4 +67,4 @@ } } } -} \ No newline at end of file +} diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/CmSubscriptionConfig.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cache/CmSubscriptionConfig.java similarity index 86% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/CmSubscriptionConfig.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cache/CmSubscriptionConfig.java index 37213c96ed..95ae011dfe 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/CmSubscriptionConfig.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cache/CmSubscriptionConfig.java @@ -18,13 +18,13 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cache; +package org.onap.cps.ncmp.impl.datajobs.subscription.cache; import com.hazelcast.config.MapConfig; import com.hazelcast.map.IMap; import java.util.Map; import org.onap.cps.ncmp.impl.cache.HazelcastCacheConfig; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -32,7 +32,7 @@ import org.springframework.context.annotation.Configuration; public class CmSubscriptionConfig extends HazelcastCacheConfig { private static final MapConfig cmNotificationSubscriptionCacheMapConfig = - createGenericMapConfig("cmNotificationSubscriptionCacheMapConfig"); + createGenericMapConfig("cmNotificationSubscriptionCacheMapConfig"); /** * Distributed instance of cm notification subscription information @@ -44,6 +44,6 @@ public class CmSubscriptionConfig extends HazelcastCacheConfig { @Bean public IMap> cmNotificationSubscriptionCache() { return getOrCreateHazelcastInstance(cmNotificationSubscriptionCacheMapConfig).getMap( - "cmNotificationSubscriptionCache"); + "cmNotificationSubscriptionCache"); } } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/DmiCacheHandler.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cache/DmiCacheHandler.java similarity index 65% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/DmiCacheHandler.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cache/DmiCacheHandler.java index 9d87690531..6a5252a2ea 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/DmiCacheHandler.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cache/DmiCacheHandler.java @@ -18,9 +18,9 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cache; +package org.onap.cps.ncmp.impl.datajobs.subscription.cache; -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.PENDING; +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.PENDING; import java.util.ArrayList; import java.util.Collection; @@ -32,11 +32,11 @@ import java.util.Set; import java.util.stream.Collectors; import lombok.RequiredArgsConstructor; import org.onap.cps.ncmp.api.data.models.DatastoreType; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.utils.CmDataJobSubscriptionPersistenceService; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.Predicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.Predicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.utils.CmDataJobSubscriptionPersistenceService; import org.onap.cps.ncmp.impl.inventory.InventoryPersistence; import org.onap.cps.ncmp.impl.inventory.models.YangModelCmHandle; import org.springframework.stereotype.Component; @@ -52,8 +52,8 @@ public class DmiCacheHandler { /** * Adds subscription to the subscription cache. * - * @param subscriptionId subscription id - * @param predicates subscription request predicates + * @param subscriptionId subscription id + * @param predicates subscription request predicates */ public void add(final String subscriptionId, final List predicates) { cmNotificationSubscriptionCache.put(subscriptionId, createDmiSubscriptionsPerDmi(predicates)); @@ -62,19 +62,19 @@ public class DmiCacheHandler { /** * Adds subscription to the subscription cache. * - * @param subscriptionId subscription id + * @param subscriptionId subscription id * @param dmiCmSubscriptionDetailsPerDmi map of dmi cm notification subscription details per dmi */ public void add(final String subscriptionId, final Map - dmiCmSubscriptionDetailsPerDmi) { + dmiCmSubscriptionDetailsPerDmi) { cmNotificationSubscriptionCache.put(subscriptionId, dmiCmSubscriptionDetailsPerDmi); } /** * Get cm notification subscription cache entry via subscription id. * - * @param subscriptionId subscription id + * @param subscriptionId subscription id * @return map of dmi cm notification subscriptions per dmi */ public Map get(final String subscriptionId) { @@ -89,120 +89,117 @@ public class DmiCacheHandler { */ public void removeAcceptedAndRejectedDmiSubscriptionEntries(final String subscriptionId) { final Map dmiSubscriptionsPerDmi = - cmNotificationSubscriptionCache.get(subscriptionId); + cmNotificationSubscriptionCache.get(subscriptionId); final Map updatedDmiSubscriptionsPerDmi = - dmiSubscriptionsPerDmi.entrySet().stream() - .filter(dmiCmNotificationSubscription -> !isAcceptedOrRejected( - dmiCmNotificationSubscription.getValue())) - .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); + dmiSubscriptionsPerDmi.entrySet().stream() + .filter(dmiCmNotificationSubscription -> !isAcceptedOrRejected( + dmiCmNotificationSubscription.getValue())) + .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); cmNotificationSubscriptionCache.put(subscriptionId, updatedDmiSubscriptionsPerDmi); } /** - * Creates map of subscription details per DMI. + * Creates map of subscription details per DMI. * - * @param predicates CM Subscription Create Request Predicates - * @return Map of DmiCmNotificationSubscription per DMI plugin + * @param predicates CM Subscription Create Request Predicates + * @return Map of DmiCmNotificationSubscription per DMI plugin */ public Map createDmiSubscriptionsPerDmi( - final List predicates) { + final List predicates) { final Map dmiSubscriptionsPerDmi = - new HashMap<>(); + new HashMap<>(); for (final Predicate requestPredicate : predicates) { final List targetFilter = requestPredicate.getTargetFilter(); final DatastoreType datastoreType = DatastoreType.fromDatastoreName( - requestPredicate.getScopeFilter().getDatastore().toString()); + requestPredicate.getScopeFilter().getDatastore().toString()); final Set xpaths = new HashSet<>(requestPredicate.getScopeFilter().getXpathFilter()); final Map> targetCmHandlesByDmiMap = groupTargetCmHandleIdsByDmi(targetFilter); - for (final Map.Entry> targetCmHandlesByDmi: targetCmHandlesByDmiMap.entrySet()) { + for (final Map.Entry> targetCmHandlesByDmi : targetCmHandlesByDmiMap.entrySet()) { final DmiCmSubscriptionPredicate dmiCmSubscriptionPredicate = - new DmiCmSubscriptionPredicate(targetCmHandlesByDmi.getValue(), - datastoreType, xpaths); + new DmiCmSubscriptionPredicate(targetCmHandlesByDmi.getValue(), + datastoreType, xpaths); updateDmiSubscriptionDetailsPerDmi(targetCmHandlesByDmi.getKey(), - dmiCmSubscriptionPredicate, - dmiSubscriptionsPerDmi); + dmiCmSubscriptionPredicate, + dmiSubscriptionsPerDmi); } } return dmiSubscriptionsPerDmi; } /** - * Update status in map of subscription details per DMI. - * - * @param subscriptionId String of subscription id - * @param dmiServiceName String of dmiServiceName - * @param status String of status + * Update status in map of subscription details per DMI. * + * @param subscriptionId String of subscription id + * @param dmiServiceName String of dmiServiceName + * @param status String of status */ public void updateDmiSubscriptionStatus(final String subscriptionId, final String dmiServiceName, final CmSubscriptionStatus status) { final Map dmiSubscriptionsPerDmi = - cmNotificationSubscriptionCache.get(subscriptionId); + cmNotificationSubscriptionCache.get(subscriptionId); dmiSubscriptionsPerDmi.get(dmiServiceName).setCmSubscriptionStatus(status); cmNotificationSubscriptionCache.put(subscriptionId, dmiSubscriptionsPerDmi); } /** - * Persist map of subscription details per DMI. - * - * @param subscriptionId String of subscription id - * @param dmiServiceName String of dmiServiceName + * Persist map of subscription details per DMI. * + * @param subscriptionId String of subscription id + * @param dmiServiceName String of dmiServiceName */ public void persistIntoDatabasePerDmi(final String subscriptionId, final String dmiServiceName) { final List dmiCmSubscriptionPredicates = - cmNotificationSubscriptionCache.get(subscriptionId).get(dmiServiceName) - .getDmiCmSubscriptionPredicates(); + cmNotificationSubscriptionCache.get(subscriptionId).get(dmiServiceName) + .getDmiCmSubscriptionPredicates(); for (final DmiCmSubscriptionPredicate dmiCmSubscriptionPredicate : dmiCmSubscriptionPredicates) { final DatastoreType datastoreType = dmiCmSubscriptionPredicate.getDatastoreType(); final Set cmHandles = dmiCmSubscriptionPredicate.getTargetCmHandleIds(); - for (final String cmHandle: cmHandles) { + for (final String cmHandle : cmHandles) { cmDataJobSubscriptionPersistenceService.addSubscription(datastoreType.getDatastoreName(), - cmHandle, subscriptionId); + cmHandle, subscriptionId); } } } /** - * Remove subscription from database per DMI service name. - * - * @param subscriptionId String of subscription id - * @param dmiServiceName String of dmiServiceName + * Remove subscription from database per DMI service name. * + * @param subscriptionId String of subscription id + * @param dmiServiceName String of dmiServiceName */ public void removeFromDatabase(final String subscriptionId, final String dmiServiceName) { final List dmiCmSubscriptionPredicates = - cmNotificationSubscriptionCache.get(subscriptionId).get(dmiServiceName) - .getDmiCmSubscriptionPredicates(); + cmNotificationSubscriptionCache.get(subscriptionId).get(dmiServiceName) + .getDmiCmSubscriptionPredicates(); for (final DmiCmSubscriptionPredicate dmiCmSubscriptionPredicate : dmiCmSubscriptionPredicates) { final DatastoreType datastoreType = dmiCmSubscriptionPredicate.getDatastoreType(); final Set cmHandles = dmiCmSubscriptionPredicate.getTargetCmHandleIds(); - for (final String cmHandle: cmHandles) { + for (final String cmHandle : cmHandles) { cmDataJobSubscriptionPersistenceService.removeSubscription(datastoreType.getDatastoreName(), - cmHandle, subscriptionId); + cmHandle, subscriptionId); } } } private void updateDmiSubscriptionDetailsPerDmi( - final String dmiServiceName, - final DmiCmSubscriptionPredicate dmiCmSubscriptionPredicate, - final Map dmiSubscriptionsPerDmi) { + final String dmiServiceName, + final DmiCmSubscriptionPredicate dmiCmSubscriptionPredicate, + final Map dmiSubscriptionsPerDmi) { if (dmiSubscriptionsPerDmi.containsKey(dmiServiceName)) { dmiSubscriptionsPerDmi.get(dmiServiceName) - .getDmiCmSubscriptionPredicates().add(dmiCmSubscriptionPredicate); + .getDmiCmSubscriptionPredicates().add(dmiCmSubscriptionPredicate); } else { dmiSubscriptionsPerDmi.put(dmiServiceName, - new DmiCmSubscriptionDetails( - new ArrayList<>(List.of(dmiCmSubscriptionPredicate)), - PENDING)); + new DmiCmSubscriptionDetails( + new ArrayList<>(List.of(dmiCmSubscriptionPredicate)), + PENDING)); } } private Map> groupTargetCmHandleIdsByDmi(final List targetCmHandleIds) { final Map> targetCmHandlesByDmiServiceNames = new HashMap<>(); final Collection yangModelCmHandles = - inventoryPersistence.getYangModelCmHandles(targetCmHandleIds); + inventoryPersistence.getYangModelCmHandles(targetCmHandleIds); for (final YangModelCmHandle yangModelCmHandle : yangModelCmHandles) { final String dmiServiceName = yangModelCmHandle.getDmiServiceName(); @@ -214,6 +211,6 @@ public class DmiCacheHandler { private boolean isAcceptedOrRejected(final DmiCmSubscriptionDetails dmiCmSubscription) { return dmiCmSubscription.getCmSubscriptionStatus().toString().equals("ACCEPTED") - || dmiCmSubscription.getCmSubscriptionStatus().toString().equals("REJECTED"); + || dmiCmSubscription.getCmSubscriptionStatus().toString().equals("REJECTED"); } } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventConsumer.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventConsumer.java similarity index 96% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventConsumer.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventConsumer.java index d136bce4c3..cdde02dce0 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventConsumer.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventConsumer.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cmavc; +package org.onap.cps.ncmp.impl.datajobs.subscription.cmavc; import static org.onap.cps.ncmp.utils.events.CloudEventMapper.toTargetEvent; @@ -65,7 +65,7 @@ public class CmAvcEventConsumer { * @param cmAvcEventAsConsumerRecord Incoming raw consumer record */ @KafkaListener(topics = "${app.dmi.cm-events.topic}", - containerFactory = "cloudEventConcurrentKafkaListenerContainerFactory") + containerFactory = "cloudEventConcurrentKafkaListenerContainerFactory") @Timed(value = "cps.ncmp.cm.notifications.consume.and.forward", description = "Time taken to forward CM AVC events") public void consumeAndForward(final ConsumerRecord cmAvcEventAsConsumerRecord) { if (isEventFromOnapDmiPlugin(cmAvcEventAsConsumerRecord.headers())) { diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventService.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventService.java similarity index 89% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventService.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventService.java index 1bfc038eef..ea9cd3432a 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventService.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventService.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cmavc; +package org.onap.cps.ncmp.impl.datajobs.subscription.cmavc; import static org.onap.cps.cpspath.parser.CpsPathUtil.NO_PARENT_PATH; import static org.onap.cps.cpspath.parser.CpsPathUtil.getNormalizedParentXpath; @@ -60,14 +60,14 @@ public class CmAvcEventService { public void processCmAvcEvent(final String cmHandleId, final AvcEvent cmAvcEvent) { final List edits = - cmAvcEvent.getData().getPushChangeUpdate().getDatastoreChanges().getIetfYangPatchYangPatch().getEdit(); + cmAvcEvent.getData().getPushChangeUpdate().getDatastoreChanges().getIetfYangPatchYangPatch().getEdit(); edits.forEach( - edit -> handleCmAvcEventOperation(CmAvcOperationEnum.fromValue(edit.getOperation()), cmHandleId, edit)); + edit -> handleCmAvcEventOperation(CmAvcOperationEnum.fromValue(edit.getOperation()), cmHandleId, edit)); } private void handleCmAvcEventOperation(final CmAvcOperationEnum cmAvcOperation, final String cmHandleId, - final Edit cmAvcEventEdit) { + final Edit cmAvcEventEdit) { log.info("Operation : {} requested for cmHandleId : {}", cmAvcOperation.getValue(), cmHandleId); @@ -104,9 +104,9 @@ public class CmAvcEventService { final String cpsPathFromRestConfStylePath = getCpsPath(cmHandleId, cmAvcEventEdit.getTarget()); final String parentXpath = getNormalizedParentXpath(cpsPathFromRestConfStylePath); log.debug("Handling update operation for cmHandleId : {} , cpsPath : {} and parent-xpath : {}", cmHandleId, - cpsPathFromRestConfStylePath, parentXpath); + cpsPathFromRestConfStylePath, parentXpath); cpsDataService.updateDataNodeAndDescendants(NFP_OPERATIONAL_DATASTORE_DATASPACE_NAME, cmHandleId, - resolveParentNodeXpath(parentXpath), jsonData, NO_TIMESTAMP, JSON); + resolveParentNodeXpath(parentXpath), jsonData, NO_TIMESTAMP, JSON); } private void handlePatch(final String cmHandleId, final Edit cmAvcEventEdit) { @@ -114,9 +114,9 @@ public class CmAvcEventService { final String cpsPathFromRestConfStylePath = getCpsPath(cmHandleId, cmAvcEventEdit.getTarget()); final String parentXpath = getNormalizedParentXpath(cpsPathFromRestConfStylePath); log.debug("Handling patch operation for cmHandleId : {} , cpsPath : {} and parent-xpath : {}", cmHandleId, - cpsPathFromRestConfStylePath, parentXpath); + cpsPathFromRestConfStylePath, parentXpath); cpsDataService.updateNodeLeaves(NFP_OPERATIONAL_DATASTORE_DATASPACE_NAME, cmHandleId, - resolveParentNodeXpath(parentXpath), jsonData, NO_TIMESTAMP, JSON); + resolveParentNodeXpath(parentXpath), jsonData, NO_TIMESTAMP, JSON); } @@ -128,14 +128,14 @@ public class CmAvcEventService { final String cpsPathFromRestConfStylePath = getCpsPath(cmHandleId, cmAvcEventEdit.getTarget()); log.debug("Deleting data for xpath : {}", cpsPathFromRestConfStylePath); cpsDataService.deleteDataNode(NFP_OPERATIONAL_DATASTORE_DATASPACE_NAME, cmHandleId, - cpsPathFromRestConfStylePath, NO_TIMESTAMP); + cpsPathFromRestConfStylePath, NO_TIMESTAMP); } } private String extractNodeData(final Edit cmAvcEventEdit) { return jsonObjectMapper.convertJsonString(jsonObjectMapper.asJsonString(cmAvcEventEdit.getValue()), - String.class); + String.class); } private String getCpsPath(final String cmHandleId, final String restConfStylePath) { diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcOperationEnum.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcOperationEnum.java similarity index 96% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcOperationEnum.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcOperationEnum.java index 09c4921b7b..d33d543577 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcOperationEnum.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcOperationEnum.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cmavc; +package org.onap.cps.ncmp.impl.datajobs.subscription.cmavc; import com.fasterxml.jackson.annotation.JsonValue; diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiCmSubscriptionDetailsPerDmiMapper.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiCmSubscriptionDetailsPerDmiMapper.java similarity index 72% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiCmSubscriptionDetailsPerDmiMapper.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiCmSubscriptionDetailsPerDmiMapper.java index 423c603a92..979da46466 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiCmSubscriptionDetailsPerDmiMapper.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiCmSubscriptionDetailsPerDmiMapper.java @@ -18,10 +18,10 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi; +package org.onap.cps.ncmp.impl.datajobs.subscription.dmi; import static org.onap.cps.ncmp.api.data.models.DatastoreType.fromDatastoreName; -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.PENDING; +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.PENDING; import java.util.ArrayList; import java.util.Collection; @@ -33,9 +33,9 @@ import java.util.Map; import java.util.Set; import java.util.stream.Collectors; import org.onap.cps.ncmp.api.data.models.DatastoreType; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionKey; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionKey; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate; import org.springframework.stereotype.Component; @Component @@ -48,19 +48,19 @@ public class DmiCmSubscriptionDetailsPerDmiMapper { * @return Grouped Dmi Subscription details per dmi plugin */ public Map toDmiCmSubscriptionsPerDmi( - final Map> subscribersPerDmi) { + final Map> subscribersPerDmi) { final Map dmiSubscriptionsPerDmi = new HashMap<>(); subscribersPerDmi.forEach((dmiPluginName, dmiCmSubscriptionKeys) -> { final Map> groupedByDatastoreTypeAndXpath = - groupByDatastoreTypeAndXpath(dmiCmSubscriptionKeys); + groupByDatastoreTypeAndXpath(dmiCmSubscriptionKeys); final List dmiSubscriptionPredicates = - createDmiCmSubscriptionPredicates(groupedByDatastoreTypeAndXpath); + createDmiCmSubscriptionPredicates(groupedByDatastoreTypeAndXpath); final DmiCmSubscriptionDetails dmiCmSubscriptionDetails = - new DmiCmSubscriptionDetails(dmiSubscriptionPredicates, PENDING); + new DmiCmSubscriptionDetails(dmiSubscriptionPredicates, PENDING); dmiSubscriptionsPerDmi.put(dmiPluginName, dmiCmSubscriptionDetails); }); @@ -69,18 +69,18 @@ public class DmiCmSubscriptionDetailsPerDmiMapper { } private static Map> groupByDatastoreTypeAndXpath( - final Collection dmiCmSubscriptionKeys) { + final Collection dmiCmSubscriptionKeys) { return dmiCmSubscriptionKeys.stream().collect(Collectors.groupingBy( - datastoreTypeAndXpath -> new DatastoreTypeAndXpath( - fromDatastoreName(datastoreTypeAndXpath.datastoreName()), datastoreTypeAndXpath.xpath()))); + datastoreTypeAndXpath -> new DatastoreTypeAndXpath( + fromDatastoreName(datastoreTypeAndXpath.datastoreName()), datastoreTypeAndXpath.xpath()))); } private static List createDmiCmSubscriptionPredicates( - final Map> groupedByDatastoreTypeAndXpath) { + final Map> groupedByDatastoreTypeAndXpath) { final List dmiCmSubscriptionPredicates = new ArrayList<>(); for (final Map.Entry> datastoreTypeXpathGroupEntry : - groupedByDatastoreTypeAndXpath.entrySet()) { + groupedByDatastoreTypeAndXpath.entrySet()) { final DatastoreTypeAndXpath datastoreTypeAndXpath = datastoreTypeXpathGroupEntry.getKey(); final Set cmHandleIds = new HashSet<>(); @@ -90,14 +90,15 @@ public class DmiCmSubscriptionDetailsPerDmiMapper { final Set xpaths = Collections.singleton(datastoreTypeAndXpath.xpath()); dmiCmSubscriptionPredicates.add( - new DmiCmSubscriptionPredicate(cmHandleIds, datastoreTypeAndXpath.datastoreType(), xpaths)); + new DmiCmSubscriptionPredicate(cmHandleIds, datastoreTypeAndXpath.datastoreType(), xpaths)); } return dmiCmSubscriptionPredicates; } - private record DatastoreTypeAndXpath(DatastoreType datastoreType, String xpath) { } + private record DatastoreTypeAndXpath(DatastoreType datastoreType, String xpath) { + } } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventMapper.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventMapper.java similarity index 78% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventMapper.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventMapper.java index ed5d657026..d6e9164693 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventMapper.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventMapper.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi; +package org.onap.cps.ncmp.impl.datajobs.subscription.dmi; import java.util.ArrayList; import java.util.HashSet; @@ -27,12 +27,12 @@ import java.util.List; import java.util.Map; import java.util.Set; import lombok.RequiredArgsConstructor; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.CmHandle; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.Data; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.DmiInEvent; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.Predicate; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.ScopeFilter; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.CmHandle; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.Data; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.DmiInEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.Predicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.ScopeFilter; import org.onap.cps.ncmp.impl.inventory.InventoryPersistence; import org.springframework.stereotype.Component; @@ -53,14 +53,14 @@ public class DmiInEventMapper { final Data cmSubscriptionData = new Data(); cmSubscriptionData.setPredicates(mapToDmiInEventPredicates(dmiCmSubscriptionPredicates)); cmSubscriptionData.setCmHandles(mapToCmSubscriptionCmHandleWithAdditionalProperties( - extractUniqueCmHandleIds(dmiCmSubscriptionPredicates))); + extractUniqueCmHandleIds(dmiCmSubscriptionPredicates))); dmiInEvent.setData(cmSubscriptionData); return dmiInEvent; } private List mapToDmiInEventPredicates( - final List dmiCmSubscriptionPredicates) { + final List dmiCmSubscriptionPredicates) { final List predicates = new ArrayList<>(); @@ -68,7 +68,7 @@ public class DmiInEventMapper { final Predicate predicate = new Predicate(); final ScopeFilter scopeFilter = new ScopeFilter(); scopeFilter.setDatastore(ScopeFilter.Datastore.fromValue( - dmiCmNotificationSubscriptionPredicate.getDatastoreType().getDatastoreName())); + dmiCmNotificationSubscriptionPredicate.getDatastoreType().getDatastoreName())); scopeFilter.setXpathFilter(dmiCmNotificationSubscriptionPredicate.getXpaths().stream().toList()); predicate.setScopeFilter(scopeFilter); predicate.setTargetFilter(dmiCmNotificationSubscriptionPredicate.getTargetCmHandleIds().stream().toList()); @@ -87,8 +87,8 @@ public class DmiInEventMapper { final CmHandle cmHandle = new CmHandle(); final Map cmHandleAdditionalProperties = new LinkedHashMap<>(); yangModelCmHandle.getAdditionalProperties() - .forEach(additionalProperty -> cmHandleAdditionalProperties.put(additionalProperty.name(), - additionalProperty.value())); + .forEach(additionalProperty -> cmHandleAdditionalProperties.put(additionalProperty.name(), + additionalProperty.value())); cmHandle.setCmhandleId(yangModelCmHandle.getId()); cmHandle.setPrivateProperties(cmHandleAdditionalProperties); cmSubscriptionCmHandles.add(cmHandle); @@ -102,7 +102,7 @@ public class DmiInEventMapper { final Set cmHandleIds = new HashSet<>(); dmiCmSubscriptionPredicates.forEach(dmiCmNotificationSubscriptionPredicate -> cmHandleIds.addAll( - dmiCmNotificationSubscriptionPredicate.getTargetCmHandleIds())); + dmiCmNotificationSubscriptionPredicate.getTargetCmHandleIds())); return cmHandleIds; } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventProducer.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventProducer.java similarity index 79% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventProducer.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventProducer.java index 3b1fb95610..71d8d3c93a 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventProducer.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventProducer.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi; +package org.onap.cps.ncmp.impl.datajobs.subscription.dmi; import static org.onap.cps.ncmp.events.NcmpEventDataSchema.SUBSCRIPTIONS_V1; @@ -26,7 +26,7 @@ import io.cloudevents.CloudEvent; import java.util.Map; import lombok.RequiredArgsConstructor; import org.onap.cps.events.EventsProducer; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.DmiInEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.DmiInEvent; import org.onap.cps.ncmp.utils.events.NcmpEvent; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; @@ -53,19 +53,19 @@ public class DmiInEventProducer { public void sendDmiInEvent(final String subscriptionId, final String dmiPluginName, final String eventType, final DmiInEvent dmiInEvent) { eventsProducer.sendCloudEvent(dmiInEventTopic, subscriptionId, - buildAndGetDmiInEventAsCloudEvent(subscriptionId, dmiPluginName, eventType, dmiInEvent)); + buildAndGetDmiInEventAsCloudEvent(subscriptionId, dmiPluginName, eventType, dmiInEvent)); } private CloudEvent buildAndGetDmiInEventAsCloudEvent(final String subscriptionId, final String dmiPluginName, - final String eventType, final DmiInEvent dmiInEvent) { + final String eventType, final DmiInEvent dmiInEvent) { return NcmpEvent.builder() - .type(eventType) - .dataSchema(SUBSCRIPTIONS_V1.getDataSchema()) - .extensions(Map.of("correlationid", String.join("#", subscriptionId, dmiPluginName))) - .data(dmiInEvent) - .build() - .asCloudEvent(); + .type(eventType) + .dataSchema(SUBSCRIPTIONS_V1.getDataSchema()) + .extensions(Map.of("correlationid", String.join("#", subscriptionId, dmiPluginName))) + .data(dmiInEvent) + .build() + .asCloudEvent(); } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiOutEventConsumer.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiOutEventConsumer.java similarity index 80% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiOutEventConsumer.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiOutEventConsumer.java index d5e7106795..e747426851 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiOutEventConsumer.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiOutEventConsumer.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi; +package org.onap.cps.ncmp.impl.datajobs.subscription.dmi; import static org.onap.cps.ncmp.api.NcmpResponseStatus.CM_DATA_SUBSCRIPTION_ACCEPTED; import static org.onap.cps.ncmp.api.NcmpResponseStatus.CM_DATA_SUBSCRIPTION_REJECTED; @@ -30,14 +30,14 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.kafka.clients.consumer.ConsumerRecord; import org.onap.cps.ncmp.api.NcmpResponseStatus; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.cache.DmiCacheHandler; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp.NcmpOutEventMapper; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp.NcmpOutEventProducer; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.dmi_to_ncmp.Data; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.dmi_to_ncmp.DmiOutEvent; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.cache.DmiCacheHandler; +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi_to_ncmp.Data; +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi_to_ncmp.DmiOutEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp.NcmpOutEventMapper; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp.NcmpOutEventProducer; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.kafka.annotation.KafkaListener; import org.springframework.stereotype.Component; @@ -60,7 +60,7 @@ public class DmiOutEventConsumer { * @param dmiOutEventAsConsumerRecord the event to be consumed */ @KafkaListener(topics = "${app.ncmp.avc.cm-subscription-dmi-out}", - containerFactory = "cloudEventConcurrentKafkaListenerContainerFactory") + containerFactory = "cloudEventConcurrentKafkaListenerContainerFactory") public void consumeDmiOutEvent(final ConsumerRecord dmiOutEventAsConsumerRecord) { final CloudEvent cloudEvent = dmiOutEventAsConsumerRecord.value(); final DmiOutEvent dmiOutEvent = toTargetEvent(cloudEvent, DmiOutEvent.class); @@ -72,7 +72,7 @@ public class DmiOutEventConsumer { } private void handleDmiOutEvent(final String correlationId, final String eventType, - final DmiOutEvent dmiOutEvent) { + final DmiOutEvent dmiOutEvent) { final String subscriptionId = correlationId.split(CM_SUBSCRIPTION_CORRELATION_ID_SEPARATOR)[0]; final String dmiPluginName = correlationId.split(CM_SUBSCRIPTION_CORRELATION_ID_SEPARATOR)[1]; @@ -93,13 +93,13 @@ public class DmiOutEventConsumer { } log.info("Cm Subscription with id : {} handled by the dmi-plugin : {} has the status : {}", subscriptionId, - dmiPluginName, dmiOutEvent.getData().getStatusMessage()); + dmiPluginName, dmiOutEvent.getData().getStatusMessage()); } private void handleCacheStatusPerDmi(final String subscriptionId, final String dmiPluginName, - final CmSubscriptionStatus cmSubscriptionStatus) { + final CmSubscriptionStatus cmSubscriptionStatus) { dmiCacheHandler.updateDmiSubscriptionStatus(subscriptionId, dmiPluginName, - cmSubscriptionStatus); + cmSubscriptionStatus); } private void handleEventsStatusPerDmi(final String subscriptionId, final String eventType) { @@ -109,9 +109,8 @@ public class DmiOutEventConsumer { } private boolean checkStatusCodeAndMessage(final NcmpResponseStatus ncmpResponseStatus, - final Data dmiOutData) { + final Data dmiOutData) { return ncmpResponseStatus.getCode().equals(dmiOutData.getStatusCode()) - && ncmpResponseStatus.getMessage() - .equals(dmiOutData.getStatusMessage()); + && ncmpResponseStatus.getMessage().equals(dmiOutData.getStatusMessage()); } } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/CmSubscriptionStatus.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/CmSubscriptionStatus.java similarity index 93% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/CmSubscriptionStatus.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/CmSubscriptionStatus.java index d0f7cd4d57..cd3f2f294b 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/CmSubscriptionStatus.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/CmSubscriptionStatus.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.models; +package org.onap.cps.ncmp.impl.datajobs.subscription.models; public enum CmSubscriptionStatus { ACCEPTED, diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionDetails.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionDetails.java similarity index 94% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionDetails.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionDetails.java index dbc607ad27..90809d51d8 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionDetails.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionDetails.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.models; +package org.onap.cps.ncmp.impl.datajobs.subscription.models; import java.util.List; import lombok.AllArgsConstructor; diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionKey.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionKey.java similarity index 92% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionKey.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionKey.java index edc3c566be..e67706a634 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionKey.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionKey.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.models; +package org.onap.cps.ncmp.impl.datajobs.subscription.models; /** * Key used to find the records to be sent to the DMI plugin. @@ -27,4 +27,5 @@ package org.onap.cps.ncmp.impl.cmnotificationsubscription.models; * @param cmHandleId cmhandle id * @param xpath xpath */ -public record DmiCmSubscriptionKey(String datastoreName, String cmHandleId, String xpath) { } +public record DmiCmSubscriptionKey(String datastoreName, String cmHandleId, String xpath) { +} diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionPredicate.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionPredicate.java similarity index 95% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionPredicate.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionPredicate.java index 84d3aead8c..44ffbe52ba 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionPredicate.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionPredicate.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.models; +package org.onap.cps.ncmp.impl.datajobs.subscription.models; import java.util.Set; import lombok.AllArgsConstructor; diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionTuple.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionTuple.java similarity index 81% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionTuple.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionTuple.java index 5be75776a0..e76924c040 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/models/DmiCmSubscriptionTuple.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/models/DmiCmSubscriptionTuple.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.models; +package org.onap.cps.ncmp.impl.datajobs.subscription.models; import java.util.Collection; import java.util.Map; @@ -26,8 +26,8 @@ import java.util.Map; /** * Tuple to be used during for to delete use case. * - * @param lastRemainingSubscriptionsPerDmi subscriptions that are used by only one subscriber grouped per dmi - * @param overlappingSubscriptionsPerDmi subscriptions that are shared by multiple subscribers grouped per dmi + * @param lastRemainingSubscriptionsPerDmi subscriptions that are used by only one subscriber grouped per dmi + * @param overlappingSubscriptionsPerDmi subscriptions that are shared by multiple subscribers grouped per dmi */ public record DmiCmSubscriptionTuple(Map> lastRemainingSubscriptionsPerDmi, Map> overlappingSubscriptionsPerDmi) { diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionComparator.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionComparator.java similarity index 75% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionComparator.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionComparator.java index cf1db6ef8b..84e59d9823 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionComparator.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionComparator.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp; +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp; import java.util.ArrayList; import java.util.HashSet; @@ -26,8 +26,8 @@ import java.util.List; import java.util.Set; import lombok.RequiredArgsConstructor; import org.onap.cps.ncmp.api.data.models.DatastoreType; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.utils.CmDataJobSubscriptionPersistenceService; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.utils.CmDataJobSubscriptionPersistenceService; import org.springframework.stereotype.Component; @Component @@ -43,31 +43,33 @@ public class CmSubscriptionComparator { * @return new list of DmiCmNotificationSubscriptionPredicates */ public List getNewDmiSubscriptionPredicates( - final List existingDmiCmSubscriptionPredicates) { + final List existingDmiCmSubscriptionPredicates) { final List newDmiCmSubscriptionPredicates = - new ArrayList<>(); + new ArrayList<>(); for (final DmiCmSubscriptionPredicate dmiCmSubscriptionPredicate : existingDmiCmSubscriptionPredicates) { final Set targetCmHandleIds = new HashSet<>(); final Set xpaths = new HashSet<>(); final DatastoreType datastoreType = dmiCmSubscriptionPredicate.getDatastoreType(); for (final String cmHandleId : dmiCmSubscriptionPredicate.getTargetCmHandleIds()) { if (!cmDataJobSubscriptionPersistenceService.hasAtLeastOneSubscription( - datastoreType.getDatastoreName(), cmHandleId)) { + datastoreType.getDatastoreName(), cmHandleId)) { targetCmHandleIds.add(cmHandleId); } } populateValidDmiSubscriptionPredicates(targetCmHandleIds, xpaths, datastoreType, - newDmiCmSubscriptionPredicates); + newDmiCmSubscriptionPredicates); } return newDmiCmSubscriptionPredicates; } private void populateValidDmiSubscriptionPredicates(final Set targetCmHandleIds, - final Set xpaths, final DatastoreType datastoreType, - final List dmiCmSubscriptionPredicates) { + final Set xpaths, + final DatastoreType datastoreType, + final List + dmiCmSubscriptionPredicates) { if (!targetCmHandleIds.isEmpty()) { final DmiCmSubscriptionPredicate dmiCmSubscriptionPredicate = - new DmiCmSubscriptionPredicate(targetCmHandleIds, datastoreType, xpaths); + new DmiCmSubscriptionPredicate(targetCmHandleIds, datastoreType, xpaths); dmiCmSubscriptionPredicates.add(dmiCmSubscriptionPredicate); } } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandler.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandler.java similarity index 87% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandler.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandler.java index 90c5c575e6..0ada3ecc2f 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandler.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandler.java @@ -18,10 +18,10 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp; +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp; import java.util.List; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.Predicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.Predicate; public interface CmSubscriptionHandler { @@ -29,7 +29,7 @@ public interface CmSubscriptionHandler { * Process cm notification subscription create request. * * @param subscriptionId subscription id - * @param predicates subscription predicates + * @param predicates subscription predicates */ void processSubscriptionCreateRequest(final String subscriptionId, final List predicates); @@ -40,4 +40,4 @@ public interface CmSubscriptionHandler { */ void processSubscriptionDeleteRequest(final String subscriptionId); -} \ No newline at end of file +} diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandlerImpl.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandlerImpl.java similarity index 69% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandlerImpl.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandlerImpl.java index a82b5beaa8..85ea1c6be3 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandlerImpl.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandlerImpl.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp; +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp; import java.util.ArrayList; import java.util.Collection; @@ -32,19 +32,19 @@ import java.util.regex.Pattern; import java.util.stream.Collectors; import lombok.RequiredArgsConstructor; import org.onap.cps.api.model.DataNode; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.cache.DmiCacheHandler; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi.DmiCmSubscriptionDetailsPerDmiMapper; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi.DmiInEventMapper; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi.DmiInEventProducer; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionKey; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionTuple; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.utils.CmDataJobSubscriptionPersistenceService; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.Predicate; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.DmiInEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.cache.DmiCacheHandler; +import org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.Predicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi.DmiCmSubscriptionDetailsPerDmiMapper; +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi.DmiInEventMapper; +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi.DmiInEventProducer; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionKey; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionTuple; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.DmiInEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.utils.CmDataJobSubscriptionPersistenceService; import org.onap.cps.ncmp.impl.inventory.InventoryPersistence; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.stereotype.Service; @@ -55,8 +55,8 @@ import org.springframework.stereotype.Service; public class CmSubscriptionHandlerImpl implements CmSubscriptionHandler { private static final Pattern SUBSCRIPTION_KEY_FROM_XPATH_PATTERN = Pattern.compile( - "^/datastores/datastore\\[@name='([^']*)']/cm-handles/cm-handle\\[@id='([^']*)']/" - + "filters/filter\\[@xpath='(.*)']$"); + "^/datastores/datastore\\[@name='([^']*)']/cm-handles/cm-handle\\[@id='([^']*)']/" + + "filters/filter\\[@xpath='(.*)']$"); private final CmDataJobSubscriptionPersistenceService cmDataJobSubscriptionPersistenceService; private final CmSubscriptionComparator cmSubscriptionComparator; @@ -82,41 +82,41 @@ public class CmSubscriptionHandlerImpl implements CmSubscriptionHandler { @Override public void processSubscriptionDeleteRequest(final String subscriptionId) { final Collection subscriptionDataNodes = - cmDataJobSubscriptionPersistenceService.getAffectedDataNodes(subscriptionId); + cmDataJobSubscriptionPersistenceService.getAffectedDataNodes(subscriptionId); final DmiCmSubscriptionTuple dmiCmSubscriptionTuple = - getLastRemainingAndOverlappingSubscriptionsPerDmi(subscriptionDataNodes); + getLastRemainingAndOverlappingSubscriptionsPerDmi(subscriptionDataNodes); dmiCacheHandler.add(subscriptionId, mergeDmiCmSubscriptionDetailsPerDmiMaps(dmiCmSubscriptionTuple)); if (dmiCmSubscriptionTuple.lastRemainingSubscriptionsPerDmi().isEmpty()) { acceptAndSendDeleteRequest(subscriptionId); } else { sendSubscriptionDeleteRequestToDmi(subscriptionId, - dmiCmSubscriptionDetailsPerDmiMapper.toDmiCmSubscriptionsPerDmi( - dmiCmSubscriptionTuple.lastRemainingSubscriptionsPerDmi())); + dmiCmSubscriptionDetailsPerDmiMapper.toDmiCmSubscriptionsPerDmi( + dmiCmSubscriptionTuple.lastRemainingSubscriptionsPerDmi())); scheduleNcmpOutEventResponse(subscriptionId, "subscriptionDeleteResponse"); } } private Map mergeDmiCmSubscriptionDetailsPerDmiMaps( - final DmiCmSubscriptionTuple dmiCmSubscriptionTuple) { + final DmiCmSubscriptionTuple dmiCmSubscriptionTuple) { final Map lastRemainingDmiSubscriptionsPerDmi = - dmiCmSubscriptionDetailsPerDmiMapper.toDmiCmSubscriptionsPerDmi( - dmiCmSubscriptionTuple.lastRemainingSubscriptionsPerDmi()); + dmiCmSubscriptionDetailsPerDmiMapper.toDmiCmSubscriptionsPerDmi( + dmiCmSubscriptionTuple.lastRemainingSubscriptionsPerDmi()); final Map overlappingDmiSubscriptionsPerDmi = - dmiCmSubscriptionDetailsPerDmiMapper.toDmiCmSubscriptionsPerDmi( - dmiCmSubscriptionTuple.overlappingSubscriptionsPerDmi()); + dmiCmSubscriptionDetailsPerDmiMapper.toDmiCmSubscriptionsPerDmi( + dmiCmSubscriptionTuple.overlappingSubscriptionsPerDmi()); final Map mergedDmiSubscriptionsPerDmi = - new HashMap<>(lastRemainingDmiSubscriptionsPerDmi); + new HashMap<>(lastRemainingDmiSubscriptionsPerDmi); overlappingDmiSubscriptionsPerDmi.forEach((dmiServiceName, dmiCmSubscriptionDetails) -> - mergedDmiSubscriptionsPerDmi.merge(dmiServiceName, dmiCmSubscriptionDetails, - this::mergeDmiCmSubscriptionDetails)); + mergedDmiSubscriptionsPerDmi.merge(dmiServiceName, dmiCmSubscriptionDetails, + this::mergeDmiCmSubscriptionDetails)); return mergedDmiSubscriptionsPerDmi; } private DmiCmSubscriptionDetails mergeDmiCmSubscriptionDetails( - final DmiCmSubscriptionDetails dmiCmSubscriptionDetails, - final DmiCmSubscriptionDetails otherDmiCmSubscriptionDetails) { + final DmiCmSubscriptionDetails dmiCmSubscriptionDetails, + final DmiCmSubscriptionDetails otherDmiCmSubscriptionDetails) { final List mergedDmiCmSubscriptionPredicates = - new ArrayList<>(dmiCmSubscriptionDetails.getDmiCmSubscriptionPredicates()); + new ArrayList<>(dmiCmSubscriptionDetails.getDmiCmSubscriptionPredicates()); mergedDmiCmSubscriptionPredicates.addAll(otherDmiCmSubscriptionDetails.getDmiCmSubscriptionPredicates()); return new DmiCmSubscriptionDetails(mergedDmiCmSubscriptionPredicates, CmSubscriptionStatus.PENDING); } @@ -127,10 +127,10 @@ public class CmSubscriptionHandlerImpl implements CmSubscriptionHandler { private void rejectAndSendCreateRequest(final String subscriptionId, final List predicates) { final Set subscriptionTargetFilters = - predicates.stream().flatMap(predicate -> predicate.getTargetFilter().stream()) - .collect(Collectors.toSet()); + predicates.stream().flatMap(predicate -> predicate.getTargetFilter().stream()) + .collect(Collectors.toSet()); final NcmpOutEvent ncmpOutEvent = ncmpOutEventMapper.toNcmpOutEventForRejectedRequest(subscriptionId, - new ArrayList<>(subscriptionTargetFilters)); + new ArrayList<>(subscriptionTargetFilters)); ncmpOutEventProducer.sendNcmpOutEvent(subscriptionId, "subscriptionCreateResponse", ncmpOutEvent, false); } @@ -138,22 +138,22 @@ public class CmSubscriptionHandlerImpl implements CmSubscriptionHandler { final Set dmiServiceNames = dmiCacheHandler.get(subscriptionId).keySet(); for (final String dmiServiceName : dmiServiceNames) { dmiCacheHandler.updateDmiSubscriptionStatus(subscriptionId, dmiServiceName, - CmSubscriptionStatus.ACCEPTED); + CmSubscriptionStatus.ACCEPTED); dmiCacheHandler.removeFromDatabase(subscriptionId, dmiServiceName); } final NcmpOutEvent ncmpOutEvent = ncmpOutEventMapper.toNcmpOutEvent(subscriptionId, - dmiCacheHandler.get(subscriptionId)); + dmiCacheHandler.get(subscriptionId)); ncmpOutEventProducer.sendNcmpOutEvent(subscriptionId, "subscriptionDeleteResponse", ncmpOutEvent, - false); + false); } private void handleNewCmSubscription(final String subscriptionId) { final Map dmiSubscriptionsPerDmi = - dmiCacheHandler.get(subscriptionId); + dmiCacheHandler.get(subscriptionId); dmiSubscriptionsPerDmi.forEach((dmiPluginName, dmiSubscriptionDetails) -> { final List dmiCmSubscriptionPredicates = - cmSubscriptionComparator.getNewDmiSubscriptionPredicates( - dmiSubscriptionDetails.getDmiCmSubscriptionPredicates()); + cmSubscriptionComparator.getNewDmiSubscriptionPredicates( + dmiSubscriptionDetails.getDmiCmSubscriptionPredicates()); if (dmiCmSubscriptionPredicates.isEmpty()) { acceptAndPersistCmSubscriptionPerDmi(subscriptionId, dmiPluginName); @@ -167,54 +167,54 @@ public class CmSubscriptionHandlerImpl implements CmSubscriptionHandler { final List dmiCmSubscriptionPredicates) { final DmiInEvent dmiInEvent = dmiInEventMapper.toDmiInEvent(dmiCmSubscriptionPredicates); dmiInEventProducer.sendDmiInEvent(subscriptionId, dmiPluginName, - "subscriptionCreateRequest", dmiInEvent); + "subscriptionCreateRequest", dmiInEvent); } private void acceptAndPersistCmSubscriptionPerDmi(final String subscriptionId, final String dmiPluginName) { dmiCacheHandler.updateDmiSubscriptionStatus(subscriptionId, dmiPluginName, - CmSubscriptionStatus.ACCEPTED); + CmSubscriptionStatus.ACCEPTED); dmiCacheHandler.persistIntoDatabasePerDmi(subscriptionId, dmiPluginName); } private void sendSubscriptionDeleteRequestToDmi(final String subscriptionId, final Map - dmiCmSubscriptionsPerDmi) { + dmiCmSubscriptionsPerDmi) { dmiCmSubscriptionsPerDmi.forEach((dmiPluginName, dmiCmSubscriptionDetails) -> { final DmiInEvent dmiInEvent = - dmiInEventMapper.toDmiInEvent( - dmiCmSubscriptionDetails.getDmiCmSubscriptionPredicates()); + dmiInEventMapper.toDmiInEvent( + dmiCmSubscriptionDetails.getDmiCmSubscriptionPredicates()); dmiInEventProducer.sendDmiInEvent(subscriptionId, - dmiPluginName, "subscriptionDeleteRequest", dmiInEvent); + dmiPluginName, "subscriptionDeleteRequest", dmiInEvent); }); } private DmiCmSubscriptionTuple getLastRemainingAndOverlappingSubscriptionsPerDmi( - final Collection subscriptionNodes) { + final Collection subscriptionNodes) { final Map> lastRemainingSubscriptionsPerDmi = new HashMap<>(); final Map> overlappingSubscriptionsPerDmi = new HashMap<>(); for (final DataNode subscriptionNode : subscriptionNodes) { final DmiCmSubscriptionKey dmiCmSubscriptionKey = extractCmSubscriptionKey(subscriptionNode.getXpath()); final String dmiServiceName = inventoryPersistence.getYangModelCmHandle( - dmiCmSubscriptionKey.cmHandleId()).getDmiServiceName(); - @SuppressWarnings("unchecked") - final List subscribers = (List) subscriptionNode.getLeaves().get("subscriptionIds"); + dmiCmSubscriptionKey.cmHandleId()).getDmiServiceName(); + @SuppressWarnings("unchecked") final List subscribers = + (List) subscriptionNode.getLeaves().get("subscriptionIds"); populateDmiCmSubscriptionTuple(subscribers, overlappingSubscriptionsPerDmi, - lastRemainingSubscriptionsPerDmi, dmiServiceName, dmiCmSubscriptionKey); + lastRemainingSubscriptionsPerDmi, dmiServiceName, dmiCmSubscriptionKey); } return new DmiCmSubscriptionTuple(lastRemainingSubscriptionsPerDmi, overlappingSubscriptionsPerDmi); } private static void populateDmiCmSubscriptionTuple(final List subscribers, final Map> - overlappingSubscriptionsPerDmi, + overlappingSubscriptionsPerDmi, final Map> - lastRemainingSubscriptionsPerDmi, + lastRemainingSubscriptionsPerDmi, final String dmiServiceName, final DmiCmSubscriptionKey dmiCmSubscriptionKey) { final Map> targetMap = - subscribers.size() > 1 ? overlappingSubscriptionsPerDmi : lastRemainingSubscriptionsPerDmi; + subscribers.size() > 1 ? overlappingSubscriptionsPerDmi : lastRemainingSubscriptionsPerDmi; targetMap.computeIfAbsent(dmiServiceName, dmiName -> new HashSet<>()).add(dmiCmSubscriptionKey); } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpInEventConsumer.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpInEventConsumer.java similarity index 73% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpInEventConsumer.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpInEventConsumer.java index 83c21099ca..17d6920713 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpInEventConsumer.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpInEventConsumer.java @@ -18,12 +18,12 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp; +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp; import java.util.List; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.DataJobSubscriptionOperationInEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.DataJobSubscriptionOperationInEvent; import org.onap.cps.ncmp.impl.utils.JexParser; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.kafka.annotation.KafkaListener; @@ -41,22 +41,21 @@ public class NcmpInEventConsumer { * @param dataJobSubscriptionOperationInEvent the event to be consumed */ @KafkaListener(topics = "${app.ncmp.avc.cm-subscription-ncmp-in}", - containerFactory = "legacyEventConcurrentKafkaListenerContainerFactory", - properties = {"spring.json.value.default.type=" - + "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0" - + ".client_to_ncmp.DataJobSubscriptionOperationInEvent"}) + containerFactory = "legacyEventConcurrentKafkaListenerContainerFactory", + properties = {"spring.json.value.default.type=" + + "org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.DataJobSubscriptionOperationInEvent"}) public void consumeSubscriptionEvent( - final DataJobSubscriptionOperationInEvent dataJobSubscriptionOperationInEvent) { + final DataJobSubscriptionOperationInEvent dataJobSubscriptionOperationInEvent) { final String eventType = dataJobSubscriptionOperationInEvent.getEventType(); final String dataNodeSelector = dataJobSubscriptionOperationInEvent.getEvent().getDataJob() - .getProductionJobDefinition().getTargetSelector().getDataNodeSelector(); + .getProductionJobDefinition().getTargetSelector().getDataNodeSelector(); final List fdns = JexParser.extractFdnsFromLocationPaths(dataNodeSelector); final String dataJobId = dataJobSubscriptionOperationInEvent.getEvent().getDataJob().getId(); final String dataTypeId = dataJobSubscriptionOperationInEvent.getEvent().getDataType() != null - ? dataJobSubscriptionOperationInEvent.getEvent().getDataType().getDataTypeId() : "UNKNOWN"; + ? dataJobSubscriptionOperationInEvent.getEvent().getDataType().getDataTypeId() : "UNKNOWN"; log.info("Consumed subscription event with details: | jobId={} | eventType={} | fdns={} | dataType={}", - dataJobId, eventType, fdns, dataTypeId); + dataJobId, eventType, fdns, dataTypeId); } } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventMapper.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventMapper.java similarity index 76% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventMapper.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventMapper.java index 9f59b1a344..8954412085 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventMapper.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventMapper.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp; +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp; import java.util.ArrayList; import java.util.Collection; @@ -26,11 +26,11 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import lombok.RequiredArgsConstructor; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.Data; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.Data; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent; import org.springframework.stereotype.Component; @Component @@ -45,13 +45,13 @@ public class NcmpOutEventMapper { * @return CmNotificationSubscriptionNcmpOutEvent to sent back to the client */ public NcmpOutEvent toNcmpOutEvent(final String subscriptionId, - final Map dmiSubscriptionsPerDmi) { + final Map dmiSubscriptionsPerDmi) { final NcmpOutEvent ncmpOutEvent = new NcmpOutEvent(); final Data cmSubscriptionData = new Data(); cmSubscriptionData.setSubscriptionId(subscriptionId); populateNcmpOutEventWithCmHandleIds(dmiSubscriptionsPerDmi, - cmSubscriptionData); + cmSubscriptionData); ncmpOutEvent.setData(cmSubscriptionData); return ncmpOutEvent; @@ -60,12 +60,12 @@ public class NcmpOutEventMapper { /** * Mapper to form a rejected response for the client for the Cm Notification Subscription Request. * - * @param subscriptionId subscription id + * @param subscriptionId subscription id * @param rejectedTargetFilters list of rejected target filters for the subscription request * @return to sent back to the client */ public NcmpOutEvent toNcmpOutEventForRejectedRequest(final String subscriptionId, - final List rejectedTargetFilters) { + final List rejectedTargetFilters) { final NcmpOutEvent ncmpOutEvent = new NcmpOutEvent(); final Data cmSubscriptionData = new Data(); cmSubscriptionData.setSubscriptionId(subscriptionId); @@ -75,8 +75,8 @@ public class NcmpOutEventMapper { } private void populateNcmpOutEventWithCmHandleIds( - final Map dmiSubscriptionsPerDmi, - final Data cmSubscriptionData) { + final Map dmiSubscriptionsPerDmi, + final Data cmSubscriptionData) { final Collection acceptedCmHandleIds = new HashSet<>(); final Collection pendingCmHandleIds = new HashSet<>(); @@ -84,13 +84,13 @@ public class NcmpOutEventMapper { dmiSubscriptionsPerDmi.forEach((dmiPluginName, dmiSubscriptionDetails) -> { final CmSubscriptionStatus cmSubscriptionStatus = - dmiSubscriptionDetails.getCmSubscriptionStatus(); + dmiSubscriptionDetails.getCmSubscriptionStatus(); final List dmiCmSubscriptionPredicates = - dmiSubscriptionDetails.getDmiCmSubscriptionPredicates(); + dmiSubscriptionDetails.getDmiCmSubscriptionPredicates(); switch (cmSubscriptionStatus) { case ACCEPTED -> acceptedCmHandleIds.addAll( - extractCmHandleIds(dmiCmSubscriptionPredicates)); + extractCmHandleIds(dmiCmSubscriptionPredicates)); case PENDING -> pendingCmHandleIds.addAll(extractCmHandleIds(dmiCmSubscriptionPredicates)); default -> rejectedCmHandleIds.addAll(extractCmHandleIds(dmiCmSubscriptionPredicates)); } @@ -103,10 +103,10 @@ public class NcmpOutEventMapper { } private List extractCmHandleIds( - final List dmiCmSubscriptionPredicates) { + final List dmiCmSubscriptionPredicates) { final List cmHandleIds = new ArrayList<>(); dmiCmSubscriptionPredicates.forEach(dmiSubscriptionPredicate -> cmHandleIds.addAll( - dmiSubscriptionPredicate.getTargetCmHandleIds())); + dmiSubscriptionPredicate.getTargetCmHandleIds())); return cmHandleIds; } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventProducer.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventProducer.java similarity index 80% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventProducer.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventProducer.java index a5b9ae60c6..027414fcde 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventProducer.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventProducer.java @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp; +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp; import static org.onap.cps.ncmp.events.NcmpEventDataSchema.SUBSCRIPTIONS_V1; @@ -32,8 +32,8 @@ import java.util.concurrent.TimeUnit; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.onap.cps.events.EventsProducer; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.cache.DmiCacheHandler; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.cache.DmiCacheHandler; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent; import org.onap.cps.ncmp.utils.events.NcmpEvent; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; @@ -56,7 +56,7 @@ public class NcmpOutEventProducer { private final DmiCacheHandler dmiCacheHandler; private final ScheduledExecutorService scheduledExecutorService = Executors.newSingleThreadScheduledExecutor(); private static final Map> scheduledTasksPerSubscriptionIdAndEventType = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<>(); /** * Send the event to the client who requested the subscription with key as subscription id and event is Cloud @@ -78,13 +78,13 @@ public class NcmpOutEventProducer { final ScheduledFuture scheduledFuture = scheduleAndSendNcmpOutEvent(subscriptionId, eventType); scheduledTasksPerSubscriptionIdAndEventType.putIfAbsent(taskKey, scheduledFuture); log.debug("Scheduled the Cm Subscription Event for subscriptionId : {} and eventType : {}", subscriptionId, - eventType); + eventType); } else { cancelScheduledTask(taskKey); if (ncmpOutEvent != null) { sendNcmpOutEventNow(subscriptionId, eventType, ncmpOutEvent); log.debug("Sent Cm Subscription Event on demand for subscriptionId : {} and eventType : {}", - subscriptionId, eventType); + subscriptionId, eventType); } } } @@ -92,29 +92,29 @@ public class NcmpOutEventProducer { /** * Get an NCMP out event as cloud event. * - * @param subscriptionId subscription id - * @param eventType event type - * @param ncmpOutEvent cm notification subscription NCMP out event + * @param subscriptionId subscription id + * @param eventType event type + * @param ncmpOutEvent cm notification subscription NCMP out event * @return cm notification subscription NCMP out event as cloud event */ public static CloudEvent buildAndGetNcmpOutEventAsCloudEvent( - final String subscriptionId, final String eventType, final NcmpOutEvent ncmpOutEvent) { + final String subscriptionId, final String eventType, final NcmpOutEvent ncmpOutEvent) { return NcmpEvent.builder() - .type(eventType) - .dataSchema(SUBSCRIPTIONS_V1.getDataSchema()) - .extensions(Map.of("correlationid", subscriptionId)) - .data(ncmpOutEvent) - .build() - .asCloudEvent(); + .type(eventType) + .dataSchema(SUBSCRIPTIONS_V1.getDataSchema()) + .extensions(Map.of("correlationid", subscriptionId)) + .data(ncmpOutEvent) + .build() + .asCloudEvent(); } private ScheduledFuture scheduleAndSendNcmpOutEvent(final String subscriptionId, final String eventType) { final NcmpOutEventPublishingTask ncmpOutEventPublishingTask = - new NcmpOutEventPublishingTask(ncmpOutEventTopic, subscriptionId, eventType, eventsProducer, - ncmpOutEventMapper, dmiCacheHandler); + new NcmpOutEventPublishingTask(ncmpOutEventTopic, subscriptionId, eventType, eventsProducer, + ncmpOutEventMapper, dmiCacheHandler); return scheduledExecutorService.schedule(ncmpOutEventPublishingTask, dmiOutEventTimeoutInMs, - TimeUnit.MILLISECONDS); + TimeUnit.MILLISECONDS); } private void cancelScheduledTask(final String taskKey) { @@ -128,7 +128,7 @@ public class NcmpOutEventProducer { private void sendNcmpOutEventNow(final String subscriptionId, final String eventType, final NcmpOutEvent ncmpOutEvent) { final CloudEvent ncmpOutEventAsCloudEvent = - buildAndGetNcmpOutEventAsCloudEvent(subscriptionId, eventType, ncmpOutEvent); + buildAndGetNcmpOutEventAsCloudEvent(subscriptionId, eventType, ncmpOutEvent); eventsProducer.sendCloudEvent(ncmpOutEventTopic, subscriptionId, ncmpOutEventAsCloudEvent); dmiCacheHandler.removeAcceptedAndRejectedDmiSubscriptionEntries(subscriptionId); } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventPublishingTask.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventPublishingTask.java similarity index 75% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventPublishingTask.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventPublishingTask.java index 80d7981db9..3e65a352d3 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventPublishingTask.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventPublishingTask.java @@ -18,18 +18,18 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp; +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp; -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp.NcmpOutEventProducer.buildAndGetNcmpOutEventAsCloudEvent; +import static org.onap.cps.ncmp.impl.datajobs.subscription.ncmp.NcmpOutEventProducer.buildAndGetNcmpOutEventAsCloudEvent; import io.cloudevents.CloudEvent; import java.util.Map; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.onap.cps.events.EventsProducer; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.cache.DmiCacheHandler; -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails; -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent; +import org.onap.cps.ncmp.impl.datajobs.subscription.cache.DmiCacheHandler; +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails; +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent; @Slf4j @RequiredArgsConstructor @@ -49,11 +49,11 @@ public class NcmpOutEventPublishingTask implements Runnable { @Override public void run() { final Map dmiSubscriptionsPerDmi = - dmiCacheHandler.get(subscriptionId); + dmiCacheHandler.get(subscriptionId); final NcmpOutEvent ncmpOutEvent = ncmpOutEventMapper.toNcmpOutEvent(subscriptionId, - dmiSubscriptionsPerDmi); + dmiSubscriptionsPerDmi); eventsProducer.sendCloudEvent(topicName, subscriptionId, - buildAndGetNcmpOutEventAsCloudEvent(subscriptionId, eventType, ncmpOutEvent)); + buildAndGetNcmpOutEventAsCloudEvent(subscriptionId, eventType, ncmpOutEvent)); dmiCacheHandler.removeAcceptedAndRejectedDmiSubscriptionEntries(subscriptionId); } } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/utils/CmDataJobSubscriptionPersistenceService.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/utils/CmDataJobSubscriptionPersistenceService.java similarity index 77% rename from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/utils/CmDataJobSubscriptionPersistenceService.java rename to cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/utils/CmDataJobSubscriptionPersistenceService.java index b761f84257..7c05789fd9 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cmnotificationsubscription/utils/CmDataJobSubscriptionPersistenceService.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/utils/CmDataJobSubscriptionPersistenceService.java @@ -19,7 +19,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.utils; +package org.onap.cps.ncmp.impl.datajobs.subscription.utils; import static org.onap.cps.api.parameters.FetchDescendantsOption.OMIT_DESCENDANTS; @@ -46,9 +46,9 @@ public class CmDataJobSubscriptionPersistenceService { private static final String CM_DATA_JOB_SUBSCRIPTIONS_ANCHOR_NAME = "cm-data-job-subscriptions"; private static final String CM_DATA_JOB_SUBSCRIPTIONS_PARENT_NODE_XPATH = "/dataJob"; private static final String CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE = - "/dataJob/subscription[@alternateId='%s' and @dataTypeId='%s']"; + "/dataJob/subscription[@alternateId='%s' and @dataTypeId='%s']"; private static final String CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_DATA_JOB_ID = - "//subscription/dataJobId[text()='%s']"; + "//subscription/dataJobId[text()='%s']"; private final JsonObjectMapper jsonObjectMapper; private final CpsQueryService cpsQueryService; @@ -57,9 +57,9 @@ public class CmDataJobSubscriptionPersistenceService { /** * Check if we have a cm data job subscription for the given data type and target (FDN). * - * @param dataType the data type of the data job subscription - * @param alternateId the alternate id target of the data job subscription - * @return true if the subscription details has at least one subscriber , otherwise false + * @param dataType the data type of the data job subscription + * @param alternateId the alternate id target of the data job subscription + * @return true if the subscription details has at least one subscriber , otherwise false */ public boolean hasAtLeastOneSubscription(final String dataType, final String alternateId) { return !getSubscriptionIds(dataType, alternateId).isEmpty(); @@ -74,23 +74,23 @@ public class CmDataJobSubscriptionPersistenceService { public boolean isNewSubscriptionId(final String subscriptionId) { final String query = CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_DATA_JOB_ID.formatted(subscriptionId); return cpsQueryService.queryDataNodes(NCMP_DATASPACE_NAME, CM_DATA_JOB_SUBSCRIPTIONS_ANCHOR_NAME, - query, OMIT_DESCENDANTS).isEmpty(); + query, OMIT_DESCENDANTS).isEmpty(); } /** * Get the ids for the subscriptions for the given data type and targets. * - * @param dataType the data type of the data job subscription - * @param alternateId the alternate id target of the data job subscription - * @return collection of subscription ids of ongoing cm notification subscription + * @param dataType the data type of the data job subscription + * @param alternateId the alternate id target of the data job subscription + * @return collection of subscription ids of ongoing cm notification subscription */ @SuppressWarnings("unchecked") public Collection getSubscriptionIds(final String dataType, final String alternateId) { final String query = CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE.formatted( - alternateId, dataType); + alternateId, dataType); final Collection existingNodes = - cpsQueryService.queryDataNodes(NCMP_DATASPACE_NAME, CM_DATA_JOB_SUBSCRIPTIONS_ANCHOR_NAME, - query, OMIT_DESCENDANTS); + cpsQueryService.queryDataNodes(NCMP_DATASPACE_NAME, CM_DATA_JOB_SUBSCRIPTIONS_ANCHOR_NAME, + query, OMIT_DESCENDANTS); if (existingNodes.isEmpty()) { return Collections.emptyList(); } @@ -100,8 +100,8 @@ public class CmDataJobSubscriptionPersistenceService { /** * Add cm notification data job subscription. * - * @param dataType the data type of the data job subscription - * @param alternateId the alternate id target of the data job subscription + * @param dataType the data type of the data job subscription + * @param alternateId the alternate id target of the data job subscription * @param subscriptionId data job subscription id to be added */ public void addSubscription(final String dataType, final String alternateId, final String subscriptionId) { @@ -117,9 +117,9 @@ public class CmDataJobSubscriptionPersistenceService { /** * Remove cm notification data job Subscription. * - * @param dataType the data type of the data job subscription - * @param alternateId the alternate id target of the data job subscription - * @param subscriptionId data subscription id to remove + * @param dataType the data type of the data job subscription + * @param alternateId the alternate id target of the data job subscription + * @param subscriptionId data subscription id to remove */ public void removeSubscription(final String dataType, final String alternateId, final String subscriptionId) { final Collection subscriptionIds = getSubscriptionIds(dataType, alternateId); @@ -136,21 +136,21 @@ public class CmDataJobSubscriptionPersistenceService { /** * Retrieve all existing data nodes for given data job subscription id. * - * @param subscriptionId data job subscription id - * @return collection of DataNodes + * @param subscriptionId data job subscription id + * @return collection of DataNodes */ public Collection getAffectedDataNodes(final String subscriptionId) { final String query = CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_DATA_JOB_ID.formatted(subscriptionId); return cpsQueryService.queryDataNodes(NCMP_DATASPACE_NAME, CM_DATA_JOB_SUBSCRIPTIONS_ANCHOR_NAME, - query, OMIT_DESCENDANTS); + query, OMIT_DESCENDANTS); } private void deleteUnusedSubscriptionDetails(final String dataType, final String alternateId) { final String deleteListOfSubscriptionCpsPathQuery = - CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE.formatted(alternateId, - dataType); + CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE.formatted(alternateId, + dataType); cpsDataService.deleteDataNode(NCMP_DATASPACE_NAME, CM_DATA_JOB_SUBSCRIPTIONS_ANCHOR_NAME, - deleteListOfSubscriptionCpsPathQuery, OffsetDateTime.now()); + deleteListOfSubscriptionCpsPathQuery, OffsetDateTime.now()); } private void addNewSubscriptionDetails(final String dataType, @@ -158,26 +158,26 @@ public class CmDataJobSubscriptionPersistenceService { final String subscriptionId) { final Collection newSubscriptionList = Collections.singletonList(subscriptionId); final String subscriptionDetailsAsJson = getSubscriptionDetailsAsJson(newSubscriptionList, dataType, - alternateId); + alternateId); cpsDataService.saveData(NCMP_DATASPACE_NAME, CM_DATA_JOB_SUBSCRIPTIONS_ANCHOR_NAME, subscriptionDetailsAsJson, - OffsetDateTime.now(), ContentType.JSON); + OffsetDateTime.now(), ContentType.JSON); } private void updateSubscriptionDetails(final Collection subscriptionIds, final String dataType, final String alternateId) { final String subscriptionDetailsAsJson = getSubscriptionDetailsAsJson(subscriptionIds, dataType, alternateId); cpsDataService.updateNodeLeaves(NCMP_DATASPACE_NAME, CM_DATA_JOB_SUBSCRIPTIONS_ANCHOR_NAME, - CM_DATA_JOB_SUBSCRIPTIONS_PARENT_NODE_XPATH, subscriptionDetailsAsJson, OffsetDateTime.now(), - ContentType.JSON); + CM_DATA_JOB_SUBSCRIPTIONS_PARENT_NODE_XPATH, subscriptionDetailsAsJson, OffsetDateTime.now(), + ContentType.JSON); } private String getSubscriptionDetailsAsJson(final Collection subscriptionIds, final String dataTypeId, final String alternateId) { final Map subscriptionDetailsAsMap = - Map.of("dataTypeId", dataTypeId, - "alternateId", alternateId, - "dataJobId", (Serializable) subscriptionIds); + Map.of("dataTypeId", dataTypeId, + "alternateId", alternateId, + "dataJobId", (Serializable) subscriptionIds); return "{\"subscription\":[" + jsonObjectMapper.asJsonString(subscriptionDetailsAsMap) + "]}"; } diff --git a/cps-ncmp-service/src/main/resources/models/dmi-registry@2025-07-22.yang b/cps-ncmp-service/src/main/resources/models/dmi-registry@2025-07-22.yang index 4405c144d8..5fd237710f 100644 --- a/cps-ncmp-service/src/main/resources/models/dmi-registry@2025-07-22.yang +++ b/cps-ncmp-service/src/main/resources/models/dmi-registry@2025-07-22.yang @@ -31,7 +31,7 @@ module dmi-registry { revision "2022-05-10" { description - "Added data-sync-enabled, sync-state with state, last-sync-time, data-store-sync-state with operational and running syncstate"; + "Added data-sync-enabled, sync-state with state, last-sync-time, data-store-sync-state with operational and running sync state"; } revision "2022-02-10" { diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/CmSubscriptionConfigSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cache/CmSubscriptionConfigSpec.groovy similarity index 90% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/CmSubscriptionConfigSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cache/CmSubscriptionConfigSpec.groovy index 740567c4bf..c9a95ac92e 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/CmSubscriptionConfigSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cache/CmSubscriptionConfigSpec.groovy @@ -18,14 +18,14 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cache +package org.onap.cps.ncmp.impl.datajobs.subscription.cache import com.hazelcast.core.Hazelcast import com.hazelcast.map.IMap import org.onap.cps.ncmp.api.data.models.DatastoreType -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate +import org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate import org.springframework.beans.factory.annotation.Autowired import org.springframework.boot.test.context.SpringBootTest import spock.lang.Specification diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/DmiCacheHandlerSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cache/DmiCacheHandlerSpec.groovy similarity index 88% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/DmiCacheHandlerSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cache/DmiCacheHandlerSpec.groovy index 5e2c29b828..8be98110e1 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cache/DmiCacheHandlerSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cache/DmiCacheHandlerSpec.groovy @@ -18,16 +18,16 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cache +package org.onap.cps.ncmp.impl.datajobs.subscription.cache import com.fasterxml.jackson.databind.ObjectMapper import io.cloudevents.CloudEvent import io.cloudevents.core.builder.CloudEventBuilder import org.apache.kafka.clients.consumer.ConsumerRecord -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails -import org.onap.cps.ncmp.impl.cmnotificationsubscription.utils.CmDataJobSubscriptionPersistenceService -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.NcmpInEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.NcmpInEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails +import org.onap.cps.ncmp.impl.datajobs.subscription.utils.CmDataJobSubscriptionPersistenceService import org.onap.cps.ncmp.impl.inventory.InventoryPersistence import org.onap.cps.ncmp.impl.inventory.models.YangModelCmHandle import org.onap.cps.ncmp.utils.TestUtils @@ -55,10 +55,10 @@ class DmiCacheHandlerSpec extends MessagingBaseSpec { def objectUnderTest = new DmiCacheHandler(mockCmSubscriptionPersistenceService, testCache, mockInventoryPersistence) NcmpInEvent ncmpInEvent - def yangModelCmHandle1 = new YangModelCmHandle(id:'ch1',dmiServiceName:'dmi-1') - def yangModelCmHandle2 = new YangModelCmHandle(id:'ch2',dmiServiceName:'dmi-2') - def yangModelCmHandle3 = new YangModelCmHandle(id:'ch3',dmiServiceName:'dmi-1') - def yangModelCmHandle4 = new YangModelCmHandle(id:'ch4',dmiServiceName:'dmi-2') + def yangModelCmHandle1 = new YangModelCmHandle(id: 'ch1', dmiServiceName: 'dmi-1') + def yangModelCmHandle2 = new YangModelCmHandle(id: 'ch2', dmiServiceName: 'dmi-2') + def yangModelCmHandle3 = new YangModelCmHandle(id: 'ch3', dmiServiceName: 'dmi-1') + def yangModelCmHandle4 = new YangModelCmHandle(id: 'ch4', dmiServiceName: 'dmi-2') def setup() { setUpTestEvent() @@ -95,7 +95,7 @@ class DmiCacheHandlerSpec extends MessagingBaseSpec { def 'Get cache entry via subscription id'() { given: 'the cache contains value for some-id' - testCache.put('some-id',[:]) + testCache.put('some-id', [:]) when: 'the get method is called' def result = objectUnderTest.get('some-id') then: 'correct value is returned as expected' @@ -106,17 +106,17 @@ class DmiCacheHandlerSpec extends MessagingBaseSpec { given: 'a map as the value for cache entry for some-id' def testMap = [:] testMap.put("dmi-1", - new DmiCmSubscriptionDetails([],CmSubscriptionStatus.ACCEPTED)) + new DmiCmSubscriptionDetails([], CmSubscriptionStatus.ACCEPTED)) testMap.put("dmi-2", - new DmiCmSubscriptionDetails([],CmSubscriptionStatus.REJECTED)) + new DmiCmSubscriptionDetails([], CmSubscriptionStatus.REJECTED)) testMap.put("dmi-3", - new DmiCmSubscriptionDetails([],CmSubscriptionStatus.PENDING)) + new DmiCmSubscriptionDetails([], CmSubscriptionStatus.PENDING)) testCache.put("test-id", testMap) assert testCache.get("test-id").size() == 3 when: 'the method to remove accepted and rejected entries for test-id is called' objectUnderTest.removeAcceptedAndRejectedDmiSubscriptionEntries("test-id") then: 'all entries with status accepted/rejected are no longer present for test-id' - testCache.get("test-id").each { key, testResultMap -> + testCache.get("test-id").each {key, testResultMap -> assert testResultMap.cmSubscriptionStatus != CmSubscriptionStatus.ACCEPTED || testResultMap.cmSubscriptionStatus != CmSubscriptionStatus.REJECTED } @@ -174,7 +174,7 @@ class DmiCacheHandlerSpec extends MessagingBaseSpec { def subscriptionId = ncmpInEvent.getData().getSubscriptionId() objectUnderTest.add(subscriptionId, predicates) when: 'subscription status per dmi is updated in cache' - objectUnderTest.updateDmiSubscriptionStatus(subscriptionId,'dmi-1', CmSubscriptionStatus.ACCEPTED) + objectUnderTest.updateDmiSubscriptionStatus(subscriptionId, 'dmi-1', CmSubscriptionStatus.ACCEPTED) then: 'verify status has been updated in cache' def predicate = testCache.get(subscriptionId) assert predicate.get('dmi-1').cmSubscriptionStatus == CmSubscriptionStatus.ACCEPTED @@ -186,7 +186,7 @@ class DmiCacheHandlerSpec extends MessagingBaseSpec { def subscriptionId = ncmpInEvent.getData().getSubscriptionId() objectUnderTest.add(subscriptionId, predicates) when: 'subscription is persisted in database' - objectUnderTest.persistIntoDatabasePerDmi(subscriptionId,'dmi-1') + objectUnderTest.persistIntoDatabasePerDmi(subscriptionId, 'dmi-1') then: 'persistence service is called the correct number of times per dmi' 2 * mockCmSubscriptionPersistenceService.addSubscription(*_) } @@ -197,12 +197,12 @@ class DmiCacheHandlerSpec extends MessagingBaseSpec { def subscriptionId = ncmpInEvent.getData().getSubscriptionId() objectUnderTest.add(subscriptionId, predicates) when: 'subscription is persisted in database' - objectUnderTest.removeFromDatabase(subscriptionId,'dmi-1') + objectUnderTest.removeFromDatabase(subscriptionId, 'dmi-1') then: 'persistence service is called the correct number of times per dmi' 2 * mockCmSubscriptionPersistenceService.removeSubscription(*_) } - def setUpTestEvent(){ + def setUpTestEvent() { def jsonData = TestUtils.getResourceFileContent('cmSubscription/cmNotificationSubscriptionNcmpInEvent.json') def testEventSent = jsonObjectMapper.convertJsonString(jsonData, NcmpInEvent.class) def testCloudEventSent = CloudEventBuilder.v1() @@ -217,11 +217,11 @@ class DmiCacheHandlerSpec extends MessagingBaseSpec { ncmpInEvent = toTargetEvent(cloudEvent, NcmpInEvent.class); } - def initialiseMockInventoryPersistenceResponses(){ - mockInventoryPersistence.getYangModelCmHandles(['ch1','ch2']) + def initialiseMockInventoryPersistenceResponses() { + mockInventoryPersistence.getYangModelCmHandles(['ch1', 'ch2']) >> [yangModelCmHandle1, yangModelCmHandle2] - mockInventoryPersistence.getYangModelCmHandles(['ch3','ch4']) + mockInventoryPersistence.getYangModelCmHandles(['ch3', 'ch4']) >> [yangModelCmHandle3, yangModelCmHandle4] } diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventConsumerSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventConsumerSpec.groovy similarity index 96% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventConsumerSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventConsumerSpec.groovy index 9cf3684832..87e026e08a 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventConsumerSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventConsumerSpec.groovy @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cmavc +package org.onap.cps.ncmp.impl.datajobs.subscription.cmavc import com.fasterxml.jackson.databind.ObjectMapper import io.cloudevents.CloudEvent @@ -101,7 +101,7 @@ class CmAvcEventConsumerSpec extends MessagingBaseSpec { def sourceSystem = 'ONAP-DMI-PLUGIN' def testCloudEventSent = buildCloudEvent(sourceSystem, 'some-cmhandle-id') and: 'a separate topic for this test' - cmAvcEventConsumer.cmEventsTopicName = 'some-topic-for-Test-B' + cmAvcEventConsumer.cmEventsTopicName = 'some-topic-for-Test-B' and: 'inventory persistence service has #scenario' def compositeState = new CompositeState(dataSyncEnabled: dataSyncFlag) 1 * mockInventoryPersistence.getCmHandleState(_) >> compositeState @@ -111,7 +111,7 @@ class CmAvcEventConsumerSpec extends MessagingBaseSpec { when: 'the event is consumed' cmAvcEventConsumer.consumeAndForward(consumerRecord) then: 'cm avc event is processed for updating the cached data' - expectedCallToProcessCmAvcEvent * mockCmAvcEventService.processCmAvcEvent(testEventKey, _) >> { args -> + expectedCallToProcessCmAvcEvent * mockCmAvcEventService.processCmAvcEvent(testEventKey, _) >> {args -> { assert args[1] instanceof AvcEvent } @@ -123,7 +123,7 @@ class CmAvcEventConsumerSpec extends MessagingBaseSpec { } - def buildCloudEvent(sourceSystem, cmHandleId){ + def buildCloudEvent(sourceSystem, cmHandleId) { return CloudEventBuilder.v1() .withData(jsonObjectMapper.asJsonBytes(testAvcEvent)) diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventServiceSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventServiceSpec.groovy similarity index 99% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventServiceSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventServiceSpec.groovy index 3822ba3f95..62b20e4330 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/cmavc/CmAvcEventServiceSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/cmavc/CmAvcEventServiceSpec.groovy @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.cmavc +package org.onap.cps.ncmp.impl.datajobs.subscription.cmavc import com.fasterxml.jackson.databind.ObjectMapper import org.onap.cps.api.CpsAnchorService diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiCmSubscriptionDetailsPerDmiMapperSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiCmSubscriptionDetailsPerDmiMapperSpec.groovy similarity index 94% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiCmSubscriptionDetailsPerDmiMapperSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiCmSubscriptionDetailsPerDmiMapperSpec.groovy index 5d74f45bb9..2d0a4c54fd 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiCmSubscriptionDetailsPerDmiMapperSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiCmSubscriptionDetailsPerDmiMapperSpec.groovy @@ -18,9 +18,9 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi +package org.onap.cps.ncmp.impl.datajobs.subscription.dmi -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionKey +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionKey import spock.lang.Specification class DmiCmSubscriptionDetailsPerDmiMapperSpec extends Specification { diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventMapperSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventMapperSpec.groovy similarity index 89% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventMapperSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventMapperSpec.groovy index 44f589020a..ccc25255d1 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventMapperSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventMapperSpec.groovy @@ -18,10 +18,10 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi +package org.onap.cps.ncmp.impl.datajobs.subscription.dmi -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate import org.onap.cps.ncmp.impl.inventory.InventoryPersistence import org.onap.cps.ncmp.impl.inventory.models.YangModelCmHandle import spock.lang.Specification @@ -44,7 +44,7 @@ class DmiInEventMapperSpec extends Specification { def 'Check for Cm Notification Subscription DMI In Event mapping'() { given: 'a collection of cm subscription predicates' def dmiSubscriptionPredicates = [new DmiCmSubscriptionPredicate(['ch-1'].toSet(), PASSTHROUGH_RUNNING, ['/ch-1'].toSet()), - new DmiCmSubscriptionPredicate(['ch-2'].toSet(), PASSTHROUGH_OPERATIONAL, ['/ch-2'].toSet())] + new DmiCmSubscriptionPredicate(['ch-2'].toSet(), PASSTHROUGH_OPERATIONAL, ['/ch-2'].toSet())] when: 'we try to map the values' def result = objectUnderTest.toDmiInEvent(dmiSubscriptionPredicates) then: 'it contains correct cm notification subscription cmhandle object' diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventProducerSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventProducerSpec.groovy similarity index 91% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventProducerSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventProducerSpec.groovy index 5a101471f5..683f10be13 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiInEventProducerSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiInEventProducerSpec.groovy @@ -18,16 +18,16 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi +package org.onap.cps.ncmp.impl.datajobs.subscription.dmi import com.fasterxml.jackson.databind.ObjectMapper import io.cloudevents.CloudEvent import io.cloudevents.core.v1.CloudEventBuilder import org.onap.cps.events.EventsProducer import org.onap.cps.ncmp.config.CpsApplicationContext -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.CmHandle -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.Data -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.DmiInEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.CmHandle +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.Data +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.DmiInEvent import org.onap.cps.ncmp.utils.events.CloudEventMapper import org.onap.cps.utils.JsonObjectMapper import org.springframework.boot.test.context.SpringBootTest diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiOutEventConsumerSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiOutEventConsumerSpec.groovy similarity index 87% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiOutEventConsumerSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiOutEventConsumerSpec.groovy index 2ab15d231c..8cdbf88852 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/dmi/DmiOutEventConsumerSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/dmi/DmiOutEventConsumerSpec.groovy @@ -18,7 +18,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi +package org.onap.cps.ncmp.impl.datajobs.subscription.dmi import ch.qos.logback.classic.Level import ch.qos.logback.classic.Logger @@ -28,11 +28,11 @@ import com.fasterxml.jackson.databind.ObjectMapper import io.cloudevents.CloudEvent import io.cloudevents.core.builder.CloudEventBuilder import org.apache.kafka.clients.consumer.ConsumerRecord -import org.onap.cps.ncmp.impl.cmnotificationsubscription.cache.DmiCacheHandler -import org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp.NcmpOutEventMapper -import org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp.NcmpOutEventProducer -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.dmi_to_ncmp.Data -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.dmi_to_ncmp.DmiOutEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi_to_ncmp.Data +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi_to_ncmp.DmiOutEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.cache.DmiCacheHandler +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp.NcmpOutEventMapper +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp.NcmpOutEventProducer import org.onap.cps.ncmp.utils.TestUtils import org.onap.cps.ncmp.utils.events.MessagingBaseSpec import org.onap.cps.utils.JsonObjectMapper @@ -40,8 +40,8 @@ import org.slf4j.LoggerFactory import org.springframework.beans.factory.annotation.Autowired import org.springframework.boot.test.context.SpringBootTest -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.ACCEPTED -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.REJECTED +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.ACCEPTED +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.REJECTED @SpringBootTest(classes = [ObjectMapper, JsonObjectMapper]) class DmiOutEventConsumerSpec extends MessagingBaseSpec { @@ -103,9 +103,9 @@ class DmiOutEventConsumerSpec extends MessagingBaseSpec { when: 'the event is consumed' objectUnderTest.consumeDmiOutEvent(consumerRecord) then: 'correct number of calls to cache' - expectedCacheCalls * mockDmiCacheHandler.updateDmiSubscriptionStatus('sub-1','test-dmi-plugin-name', subscriptionStatus) + expectedCacheCalls * mockDmiCacheHandler.updateDmiSubscriptionStatus('sub-1', 'test-dmi-plugin-name', subscriptionStatus) and: 'correct number of calls to persist cache' - expectedPersistenceCalls * mockDmiCacheHandler.persistIntoDatabasePerDmi('sub-1','test-dmi-plugin-name') + expectedPersistenceCalls * mockDmiCacheHandler.persistIntoDatabasePerDmi('sub-1', 'test-dmi-plugin-name') and: 'correct number of calls to map the ncmp out event' 1 * mockNcmpOutEventMapper.toNcmpOutEvent('sub-1', _) and: 'correct number of calls to send the ncmp out event to client' diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionComparatorSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionComparatorSpec.groovy similarity index 91% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionComparatorSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionComparatorSpec.groovy index c06e16aa86..42f289f13c 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionComparatorSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionComparatorSpec.groovy @@ -17,10 +17,10 @@ * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate -import org.onap.cps.ncmp.impl.cmnotificationsubscription.utils.CmDataJobSubscriptionPersistenceService +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate +import org.onap.cps.ncmp.impl.datajobs.subscription.utils.CmDataJobSubscriptionPersistenceService import spock.lang.Specification import static org.onap.cps.ncmp.api.data.models.DatastoreType.PASSTHROUGH_OPERATIONAL diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandlerImplSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandlerImplSpec.groovy similarity index 88% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandlerImplSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandlerImplSpec.groovy index 5690b0d261..a267e277a7 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/CmSubscriptionHandlerImplSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/CmSubscriptionHandlerImplSpec.groovy @@ -18,29 +18,29 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp import com.fasterxml.jackson.databind.ObjectMapper -import org.onap.cps.ncmp.impl.cmnotificationsubscription.cache.DmiCacheHandler -import org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi.DmiCmSubscriptionDetailsPerDmiMapper -import org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi.DmiInEventMapper -import org.onap.cps.ncmp.impl.cmnotificationsubscription.dmi.DmiInEventProducer -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate -import org.onap.cps.ncmp.impl.cmnotificationsubscription.utils.CmDataJobSubscriptionPersistenceService -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.NcmpInEvent -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_dmi.DmiInEvent +import org.onap.cps.api.model.DataNode +import org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.NcmpInEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_dmi.DmiInEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.cache.DmiCacheHandler +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi.DmiCmSubscriptionDetailsPerDmiMapper +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi.DmiInEventMapper +import org.onap.cps.ncmp.impl.datajobs.subscription.dmi.DmiInEventProducer +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate +import org.onap.cps.ncmp.impl.datajobs.subscription.utils.CmDataJobSubscriptionPersistenceService import org.onap.cps.ncmp.impl.inventory.InventoryPersistence import org.onap.cps.ncmp.impl.inventory.models.YangModelCmHandle import org.onap.cps.ncmp.utils.TestUtils -import org.onap.cps.api.model.DataNode import org.onap.cps.utils.JsonObjectMapper import spock.lang.Specification import static org.onap.cps.ncmp.api.data.models.DatastoreType.PASSTHROUGH_OPERATIONAL -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.ACCEPTED -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.PENDING +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.ACCEPTED +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.PENDING class CmSubscriptionHandlerImplSpec extends Specification { @@ -144,8 +144,8 @@ class CmSubscriptionHandlerImplSpec extends Specification { when: 'the subscription delete request is processed' objectUnderTest.processSubscriptionDeleteRequest(subscriptionId) then: 'the method to send a dmi event is called with correct parameters' - 1 * mockDmiInEventProducer.sendDmiInEvent(subscriptionId,'dmi-1','subscriptionDeleteRequest',_) - 1 * mockDmiInEventProducer.sendDmiInEvent(subscriptionId,'dmi-2','subscriptionDeleteRequest',_) + 1 * mockDmiInEventProducer.sendDmiInEvent(subscriptionId, 'dmi-1', 'subscriptionDeleteRequest', _) + 1 * mockDmiInEventProducer.sendDmiInEvent(subscriptionId, 'dmi-2', 'subscriptionDeleteRequest', _) and: 'the method to send nmcp out event is called with correct parameters' 1 * mockNcmpOutEventProducer.sendNcmpOutEvent(subscriptionId, 'subscriptionDeleteResponse', null, true) } @@ -155,17 +155,17 @@ class CmSubscriptionHandlerImplSpec extends Specification { def subscriptionId = 'test-id' and: 'the persistence service returns datanodes with multiple subscribers' 1 * mockCmSubscriptionPersistenceService.getAffectedDataNodes(subscriptionId) >> - [new DataNode(xpath: "/datastores/datastore[@name='ncmp-datastore:passthrough-running']/cm-handles/cm-handle[@id='ch-1']/filters/filter[@xpath='x/y']", leaves: ['xpath': 'x/y', 'subscriptionIds': ['test-id','other-id']]), - new DataNode(xpath: "/datastores/datastore[@name='ncmp-datastore:passthrough-running']/cm-handles/cm-handle[@id='ch-2']/filters/filter[@xpath='y/z']", leaves: ['xpath': 'y/z', 'subscriptionIds': ['test-id','other-id']])] + [new DataNode(xpath: "/datastores/datastore[@name='ncmp-datastore:passthrough-running']/cm-handles/cm-handle[@id='ch-1']/filters/filter[@xpath='x/y']", leaves: ['xpath': 'x/y', 'subscriptionIds': ['test-id', 'other-id']]), + new DataNode(xpath: "/datastores/datastore[@name='ncmp-datastore:passthrough-running']/cm-handles/cm-handle[@id='ch-2']/filters/filter[@xpath='y/z']", leaves: ['xpath': 'y/z', 'subscriptionIds': ['test-id', 'other-id']])] and: 'the inventory persistence returns yang model cm handles' 1 * mockInventoryPersistence.getYangModelCmHandle('ch-1') >> new YangModelCmHandle(dmiServiceName: 'dmi-1') 1 * mockInventoryPersistence.getYangModelCmHandle('ch-2') >> new YangModelCmHandle(dmiServiceName: 'dmi-2') and: 'the cache handler returns the relevant maps whenever called' - 2 * mockDmiCacheHandler.get(subscriptionId) >> ['dmi-1':[:],'dmi-2':[:]] + 2 * mockDmiCacheHandler.get(subscriptionId) >> ['dmi-1': [:], 'dmi-2': [:]] when: 'the subscription delete request is processed' objectUnderTest.processSubscriptionDeleteRequest(subscriptionId) then: 'the method to send a dmi event is never called' - 0 * mockDmiInEventProducer.sendDmiInEvent(_,_,_,_) + 0 * mockDmiInEventProducer.sendDmiInEvent(_, _, _, _) and: 'the cache handler is called to remove subscriber from database per dmi' 1 * mockDmiCacheHandler.removeFromDatabase('test-id', 'dmi-1') 1 * mockDmiCacheHandler.removeFromDatabase('test-id', 'dmi-2') diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpInEventConsumerSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpInEventConsumerSpec.groovy similarity index 94% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpInEventConsumerSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpInEventConsumerSpec.groovy index 9e4602856e..6525c326b0 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpInEventConsumerSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpInEventConsumerSpec.groovy @@ -18,14 +18,14 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp import ch.qos.logback.classic.Level import ch.qos.logback.classic.Logger import ch.qos.logback.classic.spi.ILoggingEvent import ch.qos.logback.core.read.ListAppender import com.fasterxml.jackson.databind.ObjectMapper -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.DataJobSubscriptionOperationInEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.DataJobSubscriptionOperationInEvent import org.onap.cps.ncmp.utils.TestUtils import org.onap.cps.utils.JsonObjectMapper import org.slf4j.LoggerFactory diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventMapperSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventMapperSpec.groovy similarity index 85% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventMapperSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventMapperSpec.groovy index d3c4026962..cefb855207 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventMapperSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventMapperSpec.groovy @@ -18,18 +18,18 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionDetails -import org.onap.cps.ncmp.impl.cmnotificationsubscription.models.DmiCmSubscriptionPredicate +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionDetails +import org.onap.cps.ncmp.impl.datajobs.subscription.models.DmiCmSubscriptionPredicate import spock.lang.Specification import static org.onap.cps.ncmp.api.data.models.DatastoreType.PASSTHROUGH_OPERATIONAL import static org.onap.cps.ncmp.api.data.models.DatastoreType.PASSTHROUGH_RUNNING -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.ACCEPTED -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.PENDING -import static org.onap.cps.ncmp.impl.cmnotificationsubscription.models.CmSubscriptionStatus.REJECTED +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.ACCEPTED +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.PENDING +import static org.onap.cps.ncmp.impl.datajobs.subscription.models.CmSubscriptionStatus.REJECTED class NcmpOutEventMapperSpec extends Specification { diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventProducerSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventProducerSpec.groovy similarity index 94% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventProducerSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventProducerSpec.groovy index 09aebf3499..3ec8514a45 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/ncmp/NcmpOutEventProducerSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/ncmp/NcmpOutEventProducerSpec.groovy @@ -18,16 +18,16 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.ncmp +package org.onap.cps.ncmp.impl.datajobs.subscription.ncmp import com.fasterxml.jackson.databind.ObjectMapper import io.cloudevents.CloudEvent import io.cloudevents.core.v1.CloudEventBuilder import org.onap.cps.events.EventsProducer import org.onap.cps.ncmp.config.CpsApplicationContext -import org.onap.cps.ncmp.impl.cmnotificationsubscription.cache.DmiCacheHandler -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.Data -import org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.Data +import org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent +import org.onap.cps.ncmp.impl.datajobs.subscription.cache.DmiCacheHandler import org.onap.cps.ncmp.utils.events.CloudEventMapper import org.onap.cps.utils.JsonObjectMapper import org.springframework.boot.test.context.SpringBootTest @@ -71,7 +71,7 @@ class NcmpOutEventProducerSpec extends Specification { } } where: 'following scenarios are considered' - scenario | delayInMs | eventPublishingTaskToBeScheduled + scenario | delayInMs | eventPublishingTaskToBeScheduled 'send event now' | 0 | false 'schedule and send after the configured time ' | 1500 | true } diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/utils/CmSubscriptionPersistenceServiceSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/utils/CmSubscriptionPersistenceServiceSpec.groovy similarity index 96% rename from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/utils/CmSubscriptionPersistenceServiceSpec.groovy rename to cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/utils/CmSubscriptionPersistenceServiceSpec.groovy index b077deadbd..2bb770541e 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cmnotificationsubscription/utils/CmSubscriptionPersistenceServiceSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/datajobs/subscription/utils/CmSubscriptionPersistenceServiceSpec.groovy @@ -19,12 +19,7 @@ * ============LICENSE_END========================================================= */ -package org.onap.cps.ncmp.impl.cmnotificationsubscription.utils - -import static CmDataJobSubscriptionPersistenceService.CM_DATA_JOB_SUBSCRIPTIONS_PARENT_NODE_XPATH -import static CmDataJobSubscriptionPersistenceService.CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE -import static CmDataJobSubscriptionPersistenceService.CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_DATA_JOB_ID -import static org.onap.cps.api.parameters.FetchDescendantsOption.OMIT_DESCENDANTS +package org.onap.cps.ncmp.impl.datajobs.subscription.utils import com.fasterxml.jackson.databind.ObjectMapper import org.onap.cps.api.CpsDataService @@ -34,6 +29,11 @@ import org.onap.cps.utils.ContentType import org.onap.cps.utils.JsonObjectMapper import spock.lang.Specification +import static CmDataJobSubscriptionPersistenceService.CM_DATA_JOB_SUBSCRIPTIONS_PARENT_NODE_XPATH +import static CmDataJobSubscriptionPersistenceService.CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE +import static CmDataJobSubscriptionPersistenceService.CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_DATA_JOB_ID +import static org.onap.cps.api.parameters.FetchDescendantsOption.OMIT_DESCENDANTS + class CmSubscriptionPersistenceServiceSpec extends Specification { def jsonObjectMapper = new JsonObjectMapper(new ObjectMapper()) @@ -52,9 +52,9 @@ class CmSubscriptionPersistenceServiceSpec extends Specification { then: 'we get expected result' assert result == hasAtLeastOneSubscription where: 'following scenarios are used' - scenario | dataNode || hasAtLeastOneSubscription - 'valid datanodes present' | [new DataNode(leaves: ['dataJobId': ['dataJobId1']])]|| true - 'no datanodes present' | [] || false + scenario | dataNode || hasAtLeastOneSubscription + 'valid datanodes present' | [new DataNode(leaves: ['dataJobId': ['dataJobId1']])] || true + 'no datanodes present' | [] || false } def 'Checking uniqueness of incoming subscription ID'() { @@ -121,11 +121,11 @@ class CmSubscriptionPersistenceServiceSpec extends Specification { given: 'a subscription exists when queried' def query = CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE.formatted('altId1', 'dataType1') mockCpsQueryService.queryDataNodes('NCMP-Admin', 'cm-data-job-subscriptions', query, OMIT_DESCENDANTS) - >> [new DataNode(leaves: ['dataJobId': ['existingId','subIdToRemove'], 'dataTypeId': 'dataType1', 'alternateId': 'altId1'])] + >> [new DataNode(leaves: ['dataJobId': ['existingId', 'subIdToRemove'], 'dataTypeId': 'dataType1', 'alternateId': 'altId1'])] and: 'updated cm data job subscription details as json' def subscriptionDetailsAsJson = objectUnderTest.getSubscriptionDetailsAsJson(['existingId'], 'dataType1', 'altId1') when: 'the subscriber is removed' - objectUnderTest.removeSubscription('dataType1', 'altId1','subIdToRemove') + objectUnderTest.removeSubscription('dataType1', 'altId1', 'subIdToRemove') then: 'the list of subscribers is updated' 1 * mockCpsDataService.updateNodeLeaves('NCMP-Admin', 'cm-data-job-subscriptions', CM_DATA_JOB_SUBSCRIPTIONS_PARENT_NODE_XPATH, subscriptionDetailsAsJson, _, ContentType.JSON) } @@ -138,7 +138,7 @@ class CmSubscriptionPersistenceServiceSpec extends Specification { and: 'a cps path with alternate id and data type for deleting a node' def cpsPath = CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE.formatted('last-alt-id', 'last-data-type') when: 'that last ongoing subscription is removed' - objectUnderTest.removeSubscription('last-data-type', 'last-alt-id','subIdToRemove') + objectUnderTest.removeSubscription('last-data-type', 'last-alt-id', 'subIdToRemove') then: 'the data job subscription with empty subscribers list is removed' 1 * mockCpsDataService.deleteDataNode('NCMP-Admin', 'cm-data-job-subscriptions', cpsPath, _) } @@ -148,7 +148,7 @@ class CmSubscriptionPersistenceServiceSpec extends Specification { def query = CPS_PATH_TEMPLATE_FOR_SUBSCRIPTION_WITH_ALTERNATE_ID_AND_DATATYPE.formatted('some-alt-id', 'some-data-type') mockCpsQueryService.queryDataNodes('NCMP-Admin', 'cm-data-job-subscriptions', query, OMIT_DESCENDANTS) >> [new DataNode(leaves: ['dataJobId': ['otherDataJobId']])] when: 'the remove subscription method is with a non existing id' - objectUnderTest.removeSubscription('some-data-type', 'some-alt-id','nonExistingSubId') + objectUnderTest.removeSubscription('some-data-type', 'some-alt-id', 'nonExistingSubId') then: 'no calls to cps data service is made' 0 * mockCpsDataService.deleteDataNode(*_) and: 'removal of non existent subscription id silently ignored with no exception thrown' diff --git a/docs/schemas/ncmp/avc/ncmp-in-event-schema-1.0.0.json b/docs/schemas/ncmp/avc/ncmp-in-event-schema-1.0.0.json index d4e8519956..f2e1a6bce4 100644 --- a/docs/schemas/ncmp/avc/ncmp-in-event-schema-1.0.0.json +++ b/docs/schemas/ncmp/avc/ncmp-in-event-schema-1.0.0.json @@ -5,7 +5,7 @@ "definitions": { "NcmpInEvent": { "description": "The payload for subscription merge event.", - "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.NcmpInEvent", + "javaType": "org.onap.cps.ncmp.impl.datajobs.subscription.client_to_ncmp.NcmpInEvent", "properties": { "data": { "properties": { @@ -32,7 +32,10 @@ "datastore": { "description": "Datastore which is to be used by the subscription", "type": "string", - "enum": ["ncmp-datastore:passthrough-operational", "ncmp-datastore:passthrough-running"] + "enum": [ + "ncmp-datastore:passthrough-operational", + "ncmp-datastore:passthrough-running" + ] }, "xpathFilter": { "description": "Filter to be applied to the CM Handles through this event", @@ -70,4 +73,4 @@ ] } } -} \ No newline at end of file +} diff --git a/docs/schemas/ncmp/avc/ncmp-out-event-schema-1.0.0.json b/docs/schemas/ncmp/avc/ncmp-out-event-schema-1.0.0.json index f1dabc17a3..86c8ccb8ba 100644 --- a/docs/schemas/ncmp/avc/ncmp-out-event-schema-1.0.0.json +++ b/docs/schemas/ncmp/avc/ncmp-out-event-schema-1.0.0.json @@ -6,7 +6,7 @@ "NcmpOutEvent": { "type": "object", "description": "The payload applied cm subscription merge event coming out from NCMP.", - "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.ncmp_to_client.NcmpOutEvent", + "javaType": "org.onap.cps.ncmp.impl.datajobs.subscription.ncmp_to_client.NcmpOutEvent", "additionalProperties": false, "properties": { "data": { @@ -54,4 +54,4 @@ } -} \ No newline at end of file +} -- 2.16.6