X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cps-service%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fcps%2Fspi%2FCpsAdminPersistenceService.java;h=dd4059d88ce97490a6a81f759e9320e7b0a1599f;hb=5427ef054effb1aadfaaab300282545c99c37a61;hp=06c04ceb628c5941c973a7ad806470a1f26db00f;hpb=a16c3fb5f7f0bbe7bda9e4f21f71a3e958ed523f;p=cps.git diff --git a/cps-service/src/main/java/org/onap/cps/spi/CpsAdminPersistenceService.java b/cps-service/src/main/java/org/onap/cps/spi/CpsAdminPersistenceService.java index 06c04ceb62..dd4059d88c 100755 --- a/cps-service/src/main/java/org/onap/cps/spi/CpsAdminPersistenceService.java +++ b/cps-service/src/main/java/org/onap/cps/spi/CpsAdminPersistenceService.java @@ -1,7 +1,8 @@ -/*- +/* * ============LICENSE_START======================================================= - * Copyright (C) 2020 Nordix Foundation. All rights reserved. - * Modifications Copyright (C) 2020 Bell Canada. All rights reserved. + * Copyright (C) 2020 Nordix Foundation. + * Modifications Copyright (C) 2020-2022 Bell Canada. + * Modifications Copyright (C) 2021 Pantheon.tech * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,8 +23,7 @@ package org.onap.cps.spi; import java.util.Collection; -import org.checkerframework.checker.nullness.qual.NonNull; -import org.onap.cps.spi.exceptions.DataspaceAlreadyDefinedException; +import org.onap.cps.spi.exceptions.AlreadyDefinedException; import org.onap.cps.spi.model.Anchor; /* @@ -35,9 +35,16 @@ public interface CpsAdminPersistenceService { * Create dataspace. * * @param dataspaceName dataspace name - * @throws DataspaceAlreadyDefinedException if dataspace with same name already exists + * @throws AlreadyDefinedException if dataspace with same name already exists + */ + void createDataspace(String dataspaceName); + + /** + * Delete dataspace. + * + * @param dataspaceName the name of the dataspace to delete */ - void createDataspace(@NonNull String dataspaceName); + void deleteDataspace(String dataspaceName); /** * Create an Anchor. @@ -46,8 +53,16 @@ public interface CpsAdminPersistenceService { * @param schemaSetName schema set name * @param anchorName anchor name */ - void createAnchor(@NonNull String dataspaceName, @NonNull String schemaSetName, @NonNull String anchorName); + void createAnchor(String dataspaceName, String schemaSetName, String anchorName); + /** + * Read all anchors associated the given schema-set in the given dataspace. + * + * @param dataspaceName dataspace name + * @param schemaSetName schema-set name + * @return a collection of anchors + */ + Collection getAnchors(String dataspaceName, String schemaSetName); /** * Read all anchors in the given a dataspace. @@ -55,8 +70,18 @@ public interface CpsAdminPersistenceService { * @param dataspaceName dataspace name * @return a collection of anchors */ - @NonNull - Collection getAnchors(@NonNull String dataspaceName); + Collection getAnchors(String dataspaceName); + + /** + * Query anchor names for the given module names in the provided dataspace. + * + * + * @param dataspaceName dataspace name + * @param moduleNames a collection of module names + * @return a collection of anchor names in the given dataspace. The schema set for each anchor must include all the + * given module names + */ + Collection queryAnchors(String dataspaceName, Collection moduleNames); /** * Get an anchor in the given dataspace using the anchor name. @@ -65,6 +90,13 @@ public interface CpsAdminPersistenceService { * @param anchorName anchor name * @return an anchor */ - @NonNull - Anchor getAnchor(@NonNull String dataspaceName, @NonNull String anchorName); -} \ No newline at end of file + Anchor getAnchor(String dataspaceName, String anchorName); + + /** + * Delete anchor by name in given dataspace. + * + * @param dataspaceName dataspace name + * @param anchorName anchor name + */ + void deleteAnchor(String dataspaceName, String anchorName); +}