From 3daf949261062a648c8e902813436f5cfa97c5d9 Mon Sep 17 00:00:00 2001 From: Alexander Kreft <akreft@trineo.org> Date: Wed, 25 Aug 2021 14:52:57 +0000 Subject: [PATCH] ENH: add delete_by_id --- src/CaosDB.jl | 1 + src/Transaction.jl | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/src/CaosDB.jl b/src/CaosDB.jl index e08fbbf..726f01c 100644 --- a/src/CaosDB.jl +++ b/src/CaosDB.jl @@ -85,6 +85,7 @@ export create_transaction, add_retrieve_by_id, add_insert_entity, add_update_entity, + add_delete_by_id, add_query, execute, get_result_set, diff --git a/src/Transaction.jl b/src/Transaction.jl index 24e223f..80bf3df 100644 --- a/src/Transaction.jl +++ b/src/Transaction.jl @@ -28,6 +28,7 @@ export create_transaction, add_query, add_insert_entity, add_update_entity, + add_delete_by_id, execute, get_result_set, get_count_result, @@ -181,6 +182,27 @@ function add_update_entity(transaction::Ref{_Transaction}, entity::Ref{CaosDB.En CaosDB.Exceptions.evaluate_return_code(err_code) end +""" + function add_delete_by_id(transaction::Ref{_Transaction}, id::AbstractString) + +Add a sub-request to delete a single entity to the given `transaction`. + +!!! info + + This does not execute the transaction. +""" +function add_delete_by_id(transaction::Ref{_Transaction}, id::AbstractString) + + err_code = ccall( + (:caosdb_transaction_transaction_delete_by_id, CaosDB.library_name), + Cint, + (Ref{_Transaction}, Cstring), + transaction, + id, + ) + + CaosDB.Exceptions.evaluate_return_code(err_code) +end """ function add_retrieve_by_id( -- GitLab