From 692f1ceff7934bb60ee9604d70b249c174081a4a Mon Sep 17 00:00:00 2001 From: mpriyank Date: Fri, 10 Mar 2023 10:07:19 +0000 Subject: [PATCH 1/1] Introduce control switch - introduced a control switch and keeping it as false due to init issues Issue-ID: CPS-1537 Change-Id: I8455a5ff6fea09527c6f810ffbc620b4e38c488c Signed-off-by: mpriyank --- cps-application/src/main/resources/application.yml | 5 ++++- .../java/org/onap/cps/ncmp/init/SubscriptionModelLoader.java | 10 +++++++++- .../org/onap/cps/ncmp/init/SubscriptionModelLoaderSpec.groovy | 4 +++- cps-ncmp-service/src/test/resources/application.yml | 5 ++++- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/cps-application/src/main/resources/application.yml b/cps-application/src/main/resources/application.yml index 1d3f5013e..02902de68 100644 --- a/cps-application/src/main/resources/application.yml +++ b/cps-application/src/main/resources/application.yml @@ -183,4 +183,7 @@ ncmp: modules-sync-watchdog: async-executor: - parallelism-level: 10 \ No newline at end of file + parallelism-level: 10 + + model-loader: + subscription: false \ No newline at end of file diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/SubscriptionModelLoader.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/SubscriptionModelLoader.java index 17413ba34..0d82bb5c1 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/SubscriptionModelLoader.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/SubscriptionModelLoader.java @@ -30,6 +30,7 @@ import org.onap.cps.api.CpsAdminService; import org.onap.cps.api.CpsModuleService; import org.onap.cps.ncmp.api.impl.exception.NcmpStartUpException; import org.onap.cps.spi.exceptions.AlreadyDefinedException; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringApplication; import org.springframework.boot.context.event.ApplicationReadyEvent; import org.springframework.stereotype.Component; @@ -45,6 +46,9 @@ public class SubscriptionModelLoader implements ModelLoader { private static final String SUBSCRIPTION_ANCHOR_NAME = "AVC-Subscriptions"; private static final String SUBSCRIPTION_SCHEMASET_NAME = "subscriptions"; + @Value("${ncmp.model-loader.subscription:false}") + private boolean subscriptionModelLoaderEnabled; + /** * Method calls boarding subscription model when Application is ready. * @@ -53,7 +57,11 @@ public class SubscriptionModelLoader implements ModelLoader { @Override public void onApplicationEvent(@NonNull final ApplicationReadyEvent applicationReadyEvent) { try { - onboardSubscriptionModel(); + if (subscriptionModelLoaderEnabled) { + onboardSubscriptionModel(); + } else { + log.info("Subscription Model Loader is disabled"); + } } catch (final NcmpStartUpException ncmpStartUpException) { log.debug("Onboarding model for NCMP failed: {} ", ncmpStartUpException.getMessage()); SpringApplication.exit(applicationReadyEvent.getApplicationContext(), () -> 1); diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/SubscriptionModelLoaderSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/SubscriptionModelLoaderSpec.groovy index 65c0497c9..0e647ad87 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/SubscriptionModelLoaderSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/SubscriptionModelLoaderSpec.groovy @@ -67,7 +67,9 @@ class SubscriptionModelLoaderSpec extends Specification { } def 'Onboard subscription model successfully via application ready event'() { - when: 'the application is ready' + when:'model loader is enabled' + objectUnderTest.subscriptionModelLoaderEnabled = true + and: 'the application is ready' objectUnderTest.onApplicationEvent(applicationReadyEvent) then: 'the module service to create schema set is called once' 1 * mockCpsModuleService.createSchemaSet(SUBSCRIPTION_DATASPACE_NAME, SUBSCRIPTION_SCHEMASET_NAME,sampleYangContentMap) diff --git a/cps-ncmp-service/src/test/resources/application.yml b/cps-ncmp-service/src/test/resources/application.yml index e8b4be4bc..b7dfe86c1 100644 --- a/cps-ncmp-service/src/test/resources/application.yml +++ b/cps-ncmp-service/src/test/resources/application.yml @@ -31,4 +31,7 @@ ncmp: modules-sync-watchdog: async-executor: - parallelism-level: 3 \ No newline at end of file + parallelism-level: 3 + + model-loader: + subscription: true \ No newline at end of file -- 2.16.6