ENH: Add retrieval and queries to Extern C interface
-
Review changes -
-
Download -
Patches
-
Plain diff
Summary
See https://gitlab.indiscale.com/caosdb/customers/lfpb/management/-/issues/411. Extends the Extern C interface by retrieving single and multiple entities and executing queries.
Focus
There is a lot of repetitive new code for create, delete, set, and get functions in ccaosdb.cpp
. Some aspects of the c++ objects of Entities, Parents, and Propeties had to be changed in order to comply with the C interface, mainly because of memory management.
The most important new parts is that entities, transactions, properties and parents can now be created and deleted via the C interface, and that their properties can be set and gotten.
Test Environment
In principle, unit tests should be sufficient. Check whether you are content with the extent of the tests. Queries and retrievals are checked in the integration tests.
Check List for the Author
Please, prepare your MR for a review. Be sure to write a summary and a focus and create gitlab comments for the reviewer. They should guide the reviewer through the changes, explain your changes and also point out open questions. For further good practices have a look at our review guidelines
-
All automated tests pass -
Reference related Issues [ ] Up-to-date CHANGELOG.md-
Annotations in code (Gitlab comments) - Intent of new code
- Problems with old code
- Why this implementation?
Check List for the Reviewer
-
I understand the intent of this MR -
All automated tests pass [ ] Up-to-date CHANGELOG.md-
The test environment setup works and the intended behavior is reproducible in the test environment -
In-code documentation and comments are up-to-date. -
Check: Are there specifications? Are they satisfied?
For further good practices have a look at our review guidelines.
Merge request reports
- version 26d235a778
- version 2533f388f6
- version 24b432ca19
- version 23b432ca19
- version 22e789ec01
- version 21a0f6d763
- version 20d15ab325
- version 198c05cb6c
- version 187b8b2233
- version 17ec2eb3eb
- version 16aaedb0ed
- version 15b94d3f89
- version 140ea49404
- version 137f07dded
- version 12473e5532
- version 1187b4de92
- version 100b69843a
- version 992faecca
- version 892faecca
- version 78024bcdd
- version 6d02a5592
- version 5ffb23674
- version 4481b031c
- version 3364b9519
- version 272e8d4c5
- version 1dacefd83
- f-files (base)
- latest versione42a9d4548 commits,
- version 26d235a77847 commits,
- version 2533f388f646 commits,
- version 24b432ca1944 commits,
- version 23b432ca1945 commits,
- version 22e789ec0144 commits,
- version 21a0f6d76343 commits,
- version 20d15ab32542 commits,
- version 198c05cb6c41 commits,
- version 187b8b223338 commits,
- version 17ec2eb3eb33 commits,
- version 16aaedb0ed32 commits,
- version 15b94d3f8931 commits,
- version 140ea4940430 commits,
- version 137f07dded29 commits,
- version 12473e553226 commits,
- version 1187b4de9223 commits,
- version 100b69843a21 commits,
- version 992faecca19 commits,
- version 892faecca35 commits,
- version 78024bcdd34 commits,
- version 6d02a559230 commits,
- version 5ffb2367429 commits,
- version 4481b031c26 commits,
- version 3364b951925 commits,
- version 272e8d4c524 commits,
- version 1dacefd8323 commits,
- Side-by-side
- Inline
There are no changes yet
No changes between version 10 and version 9