Introduce Model Loader Locking Mechanism 50/142250/10
authorToineSiebelink <toine.siebelink@est.tech>
Tue, 28 Oct 2025 13:36:11 +0000 (13:36 +0000)
committerToineSiebelink <toine.siebelink@est.tech>
Tue, 28 Oct 2025 14:10:31 +0000 (14:10 +0000)
commit4327287b1fecd093b9b23788da37c6265ab461de
tree2934b69a1e60829aba49f9f49a53271e911bbcfe
parent50ce9c2c2a2c2fefa3110a82cf432183fb39cfc4
Introduce Model Loader Locking Mechanism

- Moved core hazelcast config class and parameters from ncmp to cps service
- Renamed CpsAndNcmp lock classes and config to 'CpsCommonLocks' for common use
- Moved (duplicated) test to correct test base class
- Introducing Model Loader Coordination classes
- Update lombok config in cps-service to include qualifier annotations
- Update model loaders to only execute when master

Issue-ID:CPS-2989
Change-Id: I8d846e589e362d168bd95c454cee3b2c195a1ec7
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
33 files changed:
cps-ncmp-service/pom.xml
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cache/AdminCacheConfig.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cache/AlternateIdCacheConfig.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/datajobs/subscription/cache/CmSubscriptionConfig.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/AlternateIdChecker.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleRegistrationService.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/sync/ModuleSyncWatchdog.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/sync/SynchronizationCacheConfig.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/trustlevel/TrustLevelCacheConfig.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/CmDataSubscriptionModelLoader.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/InventoryModelLoader.java
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/sync/ModuleSyncWatchdogSpec.groovy
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/sync/SynchronizationCacheConfigSpec.groovy
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/trustlevel/TrustLevelCacheConfigSpec.groovy
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/CmDataSubscriptionModelLoaderSpec.groovy
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/InventoryModelLoaderSpec.groovy
cps-service/lombok.config
cps-service/pom.xml
cps-service/src/main/java/org/onap/cps/impl/cache/CpsCommonLocksConfig.java [moved from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cache/CpsAndNcmpLockConfig.java with 67% similarity]
cps-service/src/main/java/org/onap/cps/impl/cache/HazelcastCacheConfig.java [moved from cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/cache/HazelcastCacheConfig.java with 99% similarity]
cps-service/src/main/java/org/onap/cps/init/AbstractModelLoader.java
cps-service/src/main/java/org/onap/cps/init/CpsNotificationSubscriptionModelLoader.java
cps-service/src/main/java/org/onap/cps/init/ModelLoaderCoordinatorEnd.java [new file with mode: 0644]
cps-service/src/main/java/org/onap/cps/init/ModelLoaderCoordinatorLock.java [new file with mode: 0644]
cps-service/src/main/java/org/onap/cps/utils/Sleeper.java [new file with mode: 0644]
cps-service/src/test/groovy/org/onap/cps/impl/cache/CpsCommonLocksConfigSpec.groovy [new file with mode: 0644]
cps-service/src/test/groovy/org/onap/cps/impl/cache/HazelcastCacheConfigSpec.groovy [moved from cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/cache/HazelcastCacheConfigSpec.groovy with 88% similarity]
cps-service/src/test/groovy/org/onap/cps/init/AbstractModelLoaderSpec.groovy
cps-service/src/test/groovy/org/onap/cps/init/CpsNotificationSubscriptionModelLoaderSpec.groovy
cps-service/src/test/groovy/org/onap/cps/init/ModelLoaderCoordinatorEndSpec.groovy [new file with mode: 0644]
cps-service/src/test/groovy/org/onap/cps/init/ModelLoaderCoordinatorLockSpec.groovy [new file with mode: 0644]
cps-service/src/test/resources/application.yml
integration-test/src/test/groovy/org/onap/cps/integration/base/CpsIntegrationSpecBase.groovy