9.16. ODPI-C SODA Collection Cursor Functions
SODA collection cursor handles are used to represent SODA collection cursors.
They are created by calling the function dpiSodaDb_getCollections()
and are destroyed when the last reference is released by calling the function
dpiSodaCollCursor_release()
.
See this tracking issue for known issues with SODA.
-
int dpiSodaCollCursor_addRef(dpiSodaCollCursor *cursor)
Adds a reference to the SODA collection cursor. This is intended for situations where a reference to the cursor needs to be maintained independently of the reference returned when the cursor was created.
The function returns DPI_SUCCESS for success and DPI_FAILURE for failure.
Parameter
Mode
Description
cursor
IN
The cursor to which a reference is to be added. If the reference is NULL or invalid, an error is returned.
-
int dpiSodaCollCursor_close(dpiSodaCollCursor *cursor)
Closes the cursor and makes it unusable for further work immediately, rather than when the reference count reaches zero.
The function returns DPI_SUCCESS for success and DPI_FAILURE for failure.
Parameter
Mode
Description
cursor
IN
A reference to the cursor which is to be closed. If the reference is NULL or invalid, an error is returned.
-
int dpiSodaCollCursor_getNext(dpiSodaCollCursor *cursor, uint32_t flags, dpiSodaColl **coll)
Gets the next collection from the cursor, if there is one.
The function returns DPI_SUCCESS for success and DPI_FAILURE for failure.
Parameter
Mode
Description
cursor
IN
The cursor from which the next collection is to be retrieved. The reference is NULL or invalid, an error is returned.
flags
IN
One or more of the values from the enumeration dpiSodaFlags, OR’ed together. Only the value DPI_SODA_FLAGS_DEFAULT is currently supported.
coll
OUT
A pointer to a reference to the next collection in the cursor, if one exists. If no further collections are available from the cursor, NULL is returned instead. The function
dpiSodaColl_release()
should be called when the collection is no longer required.
-
int dpiSodaCollCursor_release(dpiSodaCollCursor *cursor)
Releases a reference to the SODA collection cursor. A count of the references to the cursor is maintained and when this count reaches zero, the memory associated with the cursor is freed.
The function returns DPI_SUCCESS for success and DPI_FAILURE for failure.
Parameter
Mode
Description
cursor
IN
The cursor from which a reference is to be released. If the reference is NULL or invalid, an error is returned.