From: mpriyank Date: Fri, 10 Mar 2023 10:07:19 +0000 (+0000) Subject: Introduce control switch X-Git-Tag: 3.2.5~2 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=692f1ceff7934bb60ee9604d70b249c174081a4a;hp=ade5a6ecdb8faf1796584810a596725211ea2149;p=cps.git 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 --- 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