diff --git a/src/ccaosdb.cpp b/src/ccaosdb.cpp index d962c5bae38d655b90ce4e208bac9f042aabc7fa..9a62cb074c29d16b38c5b6fc471eeade2c01c113 100644 --- a/src/ccaosdb.cpp +++ b/src/ccaosdb.cpp @@ -461,6 +461,44 @@ ERROR_RETURN_CODE(GENERIC_ERROR, return wrapped_transaction->Query(std::string(query)); }) +ERROR_RETURN_CODE( + GENERIC_ERROR, + int caosdb_transaction_transaction_insert_entity( + caosdb_transaction_transaction *transaction, caosdb_entity_entity *entity), + { + auto *wrapped_transaction = static_cast<caosdb::transaction::Transaction *>( + transaction->wrapped_transaction); + auto *wrapped_entity = + static_cast<caosdb::entity::Entity *>(entity->wrapped_entity); + + return wrapped_transaction->InsertEntity(*wrapped_entity); + }) + +ERROR_RETURN_CODE( + GENERIC_ERROR, + int caosdb_transaction_transaction_update_entity( + caosdb_transaction_transaction *transaction, caosdb_entity_entity *entity), + { + auto *wrapped_transaction = static_cast<caosdb::transaction::Transaction *>( + transaction->wrapped_transaction); + auto *wrapped_entity = + static_cast<caosdb::entity::Entity *>(entity->wrapped_entity); + + return wrapped_transaction->UpdateEntity(*wrapped_entity); + }) + +ERROR_RETURN_CODE(GENERIC_ERROR, + int caosdb_transaction_transaction_delete_by_id( + caosdb_transaction_transaction *transaction, + const char *id), + { + auto *wrapped_transaction = + static_cast<caosdb::transaction::Transaction *>( + transaction->wrapped_transaction); + + return wrapped_transaction->DeleteById(std::string(id)) + }) + ERROR_RETURN_CODE(GENERIC_ERROR, int caosdb_transaction_transaction_execute( caosdb_transaction_transaction *transaction),