Support pagination in query across all anchors(ep4) 12/134312/38
authorrajesh.kumar <rk00747546@techmahindra.com>
Tue, 25 Apr 2023 06:28:35 +0000 (11:58 +0530)
committerrajesh.kumar <rk00747546@techmahindra.com>
Wed, 2 Aug 2023 12:45:16 +0000 (18:15 +0530)
commitf248b5d9b794d5bdff59145406e0398d6fdcafa4
treef99670f0911b4c6e5f13ec5590fe15eb205f0dc3
parent7fcffe5ae6753bfb6746d18d41ec536092603a76
Support pagination in query across all anchors(ep4)

Add pagination query parameters in query across all anchors API
pagination parameters (pageIndex and pageSize) are optional
default is to query all fragments
each pageSize represents number of records(number of anchors)
TotalRecords is returned in response header to find number of pages.

- If pagination option is provided in request then query number of
  anchors equal to pageSize. pageIndex is used for setting offset.

- return number of records(one anchor per record) as per pagesize
  and pageSize

Issue-ID: CPS-1605
Change-ID: I73f97f986a817d423f93a8d922dcd9647b2504bc
Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
26 files changed:
cps-rest/docs/openapi/components.yml
cps-rest/docs/openapi/cpsQueryV2.yml
cps-rest/src/main/java/org/onap/cps/rest/controller/QueryRestController.java
cps-rest/src/test/groovy/org/onap/cps/rest/controller/QueryRestControllerSpec.groovy
cps-ri/pom.xml
cps-ri/src/main/java/org/onap/cps/spi/impl/CpsDataPersistenceServiceImpl.java
cps-ri/src/main/java/org/onap/cps/spi/impl/utils/CpsValidatorImpl.java
cps-ri/src/main/java/org/onap/cps/spi/repository/FragmentQueryBuilder.java
cps-ri/src/main/java/org/onap/cps/spi/repository/FragmentRepository.java
cps-ri/src/main/java/org/onap/cps/spi/repository/FragmentRepositoryCpsPathQuery.java
cps-ri/src/main/java/org/onap/cps/spi/repository/FragmentRepositoryCpsPathQueryImpl.java
cps-ri/src/test/groovy/org/onap/cps/spi/impl/utils/CpsValidatorSpec.groovy
cps-service/src/main/java/org/onap/cps/api/CpsQueryService.java
cps-service/src/main/java/org/onap/cps/api/impl/CpsQueryServiceImpl.java
cps-service/src/main/java/org/onap/cps/spi/CpsDataPersistenceService.java
cps-service/src/main/java/org/onap/cps/spi/PaginationOption.java [new file with mode: 0644]
cps-service/src/main/java/org/onap/cps/spi/utils/CpsValidator.java
cps-service/src/main/java/org/onap/cps/utils/DataMapUtils.java
cps-service/src/test/groovy/org/onap/cps/api/impl/CpsQueryServiceImplSpec.groovy
cps-service/src/test/groovy/org/onap/cps/spi/PaginationOptionSpec.groovy [new file with mode: 0644]
cps-service/src/test/groovy/org/onap/cps/utils/DataMapUtilsSpec.groovy
docs/api/swagger/cps/openapi.yaml
integration-test/src/test/groovy/org/onap/cps/integration/base/CpsIntegrationSpecBase.groovy
integration-test/src/test/groovy/org/onap/cps/integration/base/FunctionalSpecBase.groovy
integration-test/src/test/groovy/org/onap/cps/integration/functional/CpsDataServiceIntegrationSpec.groovy
integration-test/src/test/groovy/org/onap/cps/integration/functional/CpsQueryServiceIntegrationSpec.groovy