Delete schema set - persistence layer
[cps.git] / cps-service / src / main / java / org / onap / cps / spi / CpsModulePersistenceService.java
index dc4e26b..f5837e8 100755 (executable)
@@ -22,6 +22,7 @@ package org.onap.cps.spi;
 
 import java.util.Map;
 import org.checkerframework.checker.nullness.qual.NonNull;
+import org.onap.cps.spi.exceptions.DataInUseException;
 
 /**
  * Service to manage modules.
@@ -38,6 +39,18 @@ public interface CpsModulePersistenceService {
     void storeSchemaSet(@NonNull String dataspaceName, @NonNull String schemaSetName,
         @NonNull Map<String, String> yangResourcesNameToContentMap);
 
+    /**
+     * 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);
+
     /**
      * Returns YANG resources per specific dataspace / schemaSetName.
      *