/*
- * ============LICENSE_START=======================================================
+ * ============LICENSE_START=======================================================
* Copyright (C) 2020 Nordix Foundation
* Modifications Copyright (C) 2021 Pantheon.tech
* ================================================================================
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
import org.checkerframework.checker.nullness.qual.NonNull;
import org.onap.cps.spi.FetchDescendantsOption;
-import org.onap.cps.spi.exceptions.AlreadyDefinedException;
-import org.onap.cps.spi.exceptions.DataNodeNotFoundException;
-import org.onap.cps.spi.exceptions.DataValidationException;
import org.onap.cps.spi.model.DataNode;
/*
* @param dataspaceName dataspace name
* @param anchorName anchor name
* @param jsonData json data
- * @throws DataValidationException when json data is invalid
*/
void saveData(@NonNull String dataspaceName, @NonNull String anchorName, @NonNull String jsonData);
* @param anchorName anchor name
* @param parentNodeXpath parent node xpath
* @param jsonData json data
- * @throws DataValidationException when json data is invalid
- * @throws DataNodeNotFoundException when parent node cannot be found by parent node xpath
- * @throws AlreadyDefinedException when child data node with same xpath already exists
*/
void saveData(@NonNull String dataspaceName, @NonNull String anchorName, @NonNull String parentNodeXpath,
@NonNull String jsonData);
* @param anchorName anchor name
* @param parentNodeXpath parent node xpath
* @param jsonData json data representing list element
- * @throws DataValidationException when json data is invalid (incl. list-node being empty)
- * @throws DataNodeNotFoundException when parent node cannot be found by parent node xpath
- * @throws AlreadyDefinedException when any of child data nodes is having xpath of already existing node
*/
void saveListNodeData(@NonNull String dataspaceName, @NonNull String anchorName, @NonNull String parentNodeXpath,
@NonNull String jsonData);
* @param anchorName anchor name
* @param parentNodeXpath parent node xpath
* @param jsonData json data representing list element
- * @throws DataValidationException when json data is invalid (incl. list-node being empty)
- * @throws DataNodeNotFoundException when parent node cannot be found by parent node xpath
*/
void replaceListNodeData(@NonNull String dataspaceName, @NonNull String anchorName, @NonNull String parentNodeXpath,
@NonNull String jsonData);
+
+ /**
+ * Deletes (if exists) child data fragment representing list-node (with one or more elements)
+ * under existing data node for the given anchor and dataspace.
+ *
+ * @param dataspaceName dataspace name
+ * @param anchorName anchor name
+ * @param listNodeXpath list node xpath
+ */
+ void deleteListNodeData(@NonNull String dataspaceName, @NonNull String anchorName, @NonNull String listNodeXpath);
}