From a2f384de843c3c3f68d2d371d185c71a900e9810 Mon Sep 17 00:00:00 2001 From: "Rishi.Chail" Date: Thu, 21 Jan 2021 19:14:24 +0000 Subject: Retrieve an Anchor for a given dataspace by anchor name - Service layer Part of story already done in CPS-135 Issue-ID: CPS-55 Signed-off-by: Rishi.Chail Change-Id: I0c4ae551f5c85866ce543fbb27b18ffff7d80462 --- .../src/main/java/org/onap/cps/api/CpsAdminService.java | 10 ++++++++++ .../java/org/onap/cps/api/impl/CpsAdminServiceImpl.java | 7 ++++++- .../org/onap/cps/api/impl/CpsAdminServiceImplSpec.groovy | 16 ++++++++++++---- 3 files changed, 28 insertions(+), 5 deletions(-) mode change 100644 => 100755 cps-service/src/main/java/org/onap/cps/api/CpsAdminService.java mode change 100644 => 100755 cps-service/src/main/java/org/onap/cps/api/impl/CpsAdminServiceImpl.java diff --git a/cps-service/src/main/java/org/onap/cps/api/CpsAdminService.java b/cps-service/src/main/java/org/onap/cps/api/CpsAdminService.java old mode 100644 new mode 100755 index 853bd958f8..ed89c43091 --- a/cps-service/src/main/java/org/onap/cps/api/CpsAdminService.java +++ b/cps-service/src/main/java/org/onap/cps/api/CpsAdminService.java @@ -57,4 +57,14 @@ public interface CpsAdminService { */ @NonNull Collection getAnchors(@NonNull String dataspaceName); + + /** + * Get an anchor in the given dataspace using the anchor name. + * + * @param dataspaceName dataspace name + * @param anchorName anchor name + * @return an anchor + */ + @NonNull + Anchor getAnchor(@NonNull String dataspaceName, @NonNull String anchorName); } diff --git a/cps-service/src/main/java/org/onap/cps/api/impl/CpsAdminServiceImpl.java b/cps-service/src/main/java/org/onap/cps/api/impl/CpsAdminServiceImpl.java old mode 100644 new mode 100755 index 0cb85fdf95..09550f1936 --- a/cps-service/src/main/java/org/onap/cps/api/impl/CpsAdminServiceImpl.java +++ b/cps-service/src/main/java/org/onap/cps/api/impl/CpsAdminServiceImpl.java @@ -47,4 +47,9 @@ public class CpsAdminServiceImpl implements CpsAdminService { public Collection getAnchors(final String dataspaceName) { return cpsAdminPersistenceService.getAnchors(dataspaceName); } -} + + @Override + public Anchor getAnchor(final String dataspaceName, final String anchorName) { + return cpsAdminPersistenceService.getAnchor(dataspaceName, anchorName); + } +} \ No newline at end of file diff --git a/cps-service/src/test/groovy/org/onap/cps/api/impl/CpsAdminServiceImplSpec.groovy b/cps-service/src/test/groovy/org/onap/cps/api/impl/CpsAdminServiceImplSpec.groovy index 5aaa340271..7c0c6267a7 100755 --- a/cps-service/src/test/groovy/org/onap/cps/api/impl/CpsAdminServiceImplSpec.groovy +++ b/cps-service/src/test/groovy/org/onap/cps/api/impl/CpsAdminServiceImplSpec.groovy @@ -32,25 +32,33 @@ class CpsAdminServiceImplSpec extends Specification { objectUnderTest.cpsAdminPersistenceService = mockCpsAdminPersistenceService } - def 'Create dataspace method invokes persistence service'() { + def 'Create dataspace method invokes persistence service.'() { when: 'Create dataspace method is invoked' objectUnderTest.createDataspace('someDataspace') then: 'The persistence service method is invoked with same parameters' 1 * mockCpsAdminPersistenceService.createDataspace('someDataspace') } - def 'Create anchor method invokes persistence service'() { + def 'Create anchor method invokes persistence service.'() { when: 'Create anchor method is invoked' objectUnderTest.createAnchor('someDataspace', 'someSchemaSet', 'someAnchorName') then: 'The persistence service method is invoked with same parameters' 1 * mockCpsAdminPersistenceService.createAnchor('someDataspace', 'someSchemaSet', 'someAnchorName') } - def 'Retrieve all anchors for dataspace'() { + def 'Retrieve all anchors for dataspace.'() { given: 'that anchor is associated with the dataspace' Collection anchorCollection = Arrays.asList(new Anchor()) mockCpsAdminPersistenceService.getAnchors('someDataspace') >> { anchorCollection } expect: 'the collection provided by persistence service is returned as result' objectUnderTest.getAnchors('someDataspace') == anchorCollection } -} + + def 'Retrieve anchor for dataspace and provided anchor name.'() { + given: 'that anchor name is associated with the dataspace' + Anchor anchor = new Anchor() + mockCpsAdminPersistenceService.getAnchor('someDataspace','someAnchor') >> anchor + expect: 'the anchor provided by persistence service is returned as result' + objectUnderTest.getAnchor('someDataspace','someAnchor') == anchor + } +} \ No newline at end of file -- cgit 1.2.3-korg