diff options
author | Ruslan Kashapov <ruslan.kashapov@pantheon.tech> | 2021-01-11 15:34:10 +0200 |
---|---|---|
committer | Ruslan Kashapov <ruslan.kashapov@pantheon.tech> | 2021-01-19 14:08:37 +0200 |
commit | dce4e316da66ede214977491c712b0a4ab457644 (patch) | |
tree | 992a172ed47557717468afff2628691b71f1eb5c /cps-service/src/main | |
parent | 6f25d3a2ae84aff3f22b50d10592c5321a7c98ce (diff) |
Delete schema set - REST and service layers
Issue-ID: CPS-121
Change-Id: I0fe885c79f98c994a8ac25a59b77b99eee4b3076
Signed-off-by: Ruslan Kashapov <ruslan.kashapov@pantheon.tech>
Diffstat (limited to 'cps-service/src/main')
-rw-r--r-- | cps-service/src/main/java/org/onap/cps/api/CpsModuleService.java | 14 | ||||
-rw-r--r-- | cps-service/src/main/java/org/onap/cps/api/impl/CpsModuleServiceImpl.java | 8 |
2 files changed, 22 insertions, 0 deletions
diff --git a/cps-service/src/main/java/org/onap/cps/api/CpsModuleService.java b/cps-service/src/main/java/org/onap/cps/api/CpsModuleService.java index 5f63f97f1e..75c6a78637 100644 --- a/cps-service/src/main/java/org/onap/cps/api/CpsModuleService.java +++ b/cps-service/src/main/java/org/onap/cps/api/CpsModuleService.java @@ -21,6 +21,8 @@ package org.onap.cps.api; import java.util.Map; import org.checkerframework.checker.nullness.qual.NonNull; +import org.onap.cps.spi.CascadeDeleteAllowed; +import org.onap.cps.spi.exceptions.DataInUseException; import org.onap.cps.spi.model.SchemaSet; /** @@ -47,4 +49,16 @@ public interface CpsModuleService { * @return a SchemaSet */ SchemaSet getSchemaSet(@NonNull String dataspaceName, @NonNull String schemaSetName); + + /** + * Deletes Schema Set. + * + * @param dataspaceName dataspace name + * @param schemaSetName schema set name + * @param cascadeDeleteAllowed indicates the allowance to remove associated anchors and data if exist + * @throws DataInUseException if cascadeDeleteAllowed is set to CASCADE_DELETE_PROHIBITED and there + * is associated anchor record exists in database + */ + void deleteSchemaSet(@NonNull String dataspaceName, @NonNull String schemaSetName, + @NonNull CascadeDeleteAllowed cascadeDeleteAllowed); } diff --git a/cps-service/src/main/java/org/onap/cps/api/impl/CpsModuleServiceImpl.java b/cps-service/src/main/java/org/onap/cps/api/impl/CpsModuleServiceImpl.java index 04a6fe1cee..eac28a9f09 100644 --- a/cps-service/src/main/java/org/onap/cps/api/impl/CpsModuleServiceImpl.java +++ b/cps-service/src/main/java/org/onap/cps/api/impl/CpsModuleServiceImpl.java @@ -20,7 +20,9 @@ package org.onap.cps.api.impl; import java.util.Map; +import org.checkerframework.checker.nullness.qual.NonNull; import org.onap.cps.api.CpsModuleService; +import org.onap.cps.spi.CascadeDeleteAllowed; import org.onap.cps.spi.CpsModulePersistenceService; import org.onap.cps.spi.model.SchemaSet; import org.onap.cps.yang.YangTextSchemaSourceSet; @@ -55,4 +57,10 @@ public class CpsModuleServiceImpl implements CpsModuleService { .moduleReferences(yangTextSchemaSourceSet.getModuleReferences()) .build(); } + + @Override + public void deleteSchemaSet(final String dataspaceName, final String schemaSetName, + final CascadeDeleteAllowed cascadeDeleteAllowed) { + cpsModulePersistenceService.deleteSchemaSet(dataspaceName, schemaSetName, cascadeDeleteAllowed); + } } |