Split the data sync request using module and root references 53/141653/4
authormpriyank <priyank.maheshwari@est.tech>
Wed, 6 Aug 2025 12:48:07 +0000 (13:48 +0100)
committermpriyank <priyank.maheshwari@est.tech>
Thu, 7 Aug 2025 14:03:52 +0000 (15:03 +0100)
commitf379ff74546a8bf5f99b9a4912082e81897b37e7
tree775448945bd0f52d4424fa84887acfd6ab550e83
parentec0396deac85278f01b81d185fbee53514267575
Split the data sync request using module and root references

- Introduced a method to get concatenated module and root node for a
  given cm handle(using already synched modules) to use options field
- The request is splitted as some devices dont support fetching the data
  using root url and the devices that support that can in turn return
  huge amount of data in one go.
- Updated the data sync logic to make multiple calls for the initial
  data sync
- The failing requests are ignored and the algorithm works on best
  effort basis
- Testware to support all the above use cases

Issue-ID: CPS-2758
Change-Id: I3d50ef8448705efdd004c6a1ee039e9691f14815
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
12 files changed:
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/data/DmiDataOperations.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/sync/DataSyncWatchdog.java
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/sync/ModuleOperationsUtils.java
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/data/DmiDataOperationsSpec.groovy
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/sync/DataSyncWatchdogSpec.groovy
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/sync/ModuleOperationsUtilsSpec.groovy
cps-service/src/main/java/org/onap/cps/api/CpsModuleService.java
cps-service/src/main/java/org/onap/cps/impl/CpsModuleServiceImpl.java
cps-service/src/main/java/org/onap/cps/utils/YangParser.java
cps-service/src/test/groovy/org/onap/cps/impl/CpsModuleServiceImplSpec.groovy
cps-service/src/test/groovy/org/onap/cps/impl/E2ENetworkSliceSpec.groovy
cps-service/src/test/groovy/org/onap/cps/utils/YangParserSpec.groovy