.\" Man page generated from reStructuredText. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "MONGOC_DATABASE_FIND_COLLECTIONS_WITH_OPTS" "3" "Feb 25, 2024" "1.26.0" "libmongoc" .SH SYNOPSIS .INDENT 0.0 .INDENT 3.5 .sp .EX mongoc_cursor_t * mongoc_database_find_collections_with_opts (mongoc_database_t *database, const bson_t *opts) BSON_GNUC_WARN_UNUSED_RESULT; .EE .UNINDENT .UNINDENT .sp Fetches a cursor containing documents, each corresponding to a collection on this database. .sp To get collection names only, use \fI\%mongoc_database_get_collection_names_with_opts()\fP\&. .sp This function is considered a retryable read operation. Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once. If \fBretryreads\fP is false in the URI (see \fI\%mongoc_uri_t\fP) the retry behavior does not apply. .SH PARAMETERS .INDENT 0.0 .IP \(bu 2 \fBdatabase\fP: A \fI\%mongoc_database_t\fP\&. .IP \(bu 2 \fBopts\fP: A \fI\%bson_t\fP containing additional options. .UNINDENT .sp \fBopts\fP may be NULL or a BSON document with additional command options: .INDENT 0.0 .IP \(bu 2 \fBsessionId\fP: First, construct a \fI\%mongoc_client_session_t\fP with \fI\%mongoc_client_start_session()\fP\&. You can begin a transaction with \fI\%mongoc_client_session_start_transaction()\fP, optionally with a \fI\%mongoc_transaction_opt_t\fP that overrides the options inherited from \fBdatabase\fP, and use \fI\%mongoc_client_session_append()\fP to add the session to \fBopts\fP\&. See the example code for \fI\%mongoc_client_session_t\fP\&. .IP \(bu 2 \fBserverId\fP: To target a specific server, include an int32 \(dqserverId\(dq field. Obtain the id by calling \fI\%mongoc_client_select_server()\fP, then \fI\%mongoc_server_description_id()\fP on its return value. .UNINDENT .sp For a list of all options, see \fI\%the MongoDB Manual entry on the listCollections command\fP\&. .SH ERRORS .sp Use \fI\%mongoc_cursor_error()\fP on the returned cursor to check for errors. .SH RETURNS .sp This function returns a newly allocated \fI\%mongoc_cursor_t\fP that should be freed with \fI\%mongoc_cursor_destroy()\fP when no longer in use. The returned \fI\%mongoc_cursor_t\fP is never \fBNULL\fP, even on error. The user must call \fI\%mongoc_cursor_next()\fP on the returned \fI\%mongoc_cursor_t\fP to execute the initial command. .sp Cursor errors can be checked with \fI\%mongoc_cursor_error_document()\fP\&. It always fills out the \fI\%bson_error_t\fP if an error occurred, and optionally includes a server reply document if the error occurred server\-side. .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 Failure to handle the result of this function is a programming error. .UNINDENT .UNINDENT .sp In the returned cursor each result corresponds to the server\(aqs representation of a collection in this database. .sp The cursor functions \fI\%mongoc_cursor_set_limit()\fP, \fI\%mongoc_cursor_set_batch_size()\fP, and \fI\%mongoc_cursor_set_max_await_time_ms()\fP have no use on the returned cursor. .SH EXAMPLES .INDENT 0.0 .INDENT 3.5 .sp .EX { bson_t opts = BSON_INITIALIZER; bson_t name_filter; const bson_t *doc; bson_iter_t iter; bson_error_t error; mongoc_cursor_t *cursor; BSON_APPEND_DOCUMENT_BEGIN (&opts, \(dqfilter\(dq, &name_filter); /* find collections with names like \(dqabbbbc\(dq */ BSON_APPEND_REGEX (&name_filter, \(dqname\(dq, \(dqab+c\(dq, NULL); bson_append_document_end (&opts, &name_filter); cursor = mongoc_database_find_collections_with_opts (database, &opts); while (mongoc_cursor_next (cursor, &doc)) { bson_iter_init_find (&iter, doc, \(dqname\(dq); printf (\(dqfound collection: %s\en\(dq, bson_iter_utf8 (&iter, NULL)); } if (mongoc_cursor_error (cursor, &error)) { fprintf (stderr, \(dq%s\en\(dq, error.message); } mongoc_cursor_destroy (cursor); bson_destroy (&opts); } .EE .UNINDENT .UNINDENT .sp \fBSEE ALSO:\fP .INDENT 0.0 .INDENT 3.5 .nf \fI\%mongoc_database_get_collection_names_with_opts()\fP .fi .sp .UNINDENT .UNINDENT .SH AUTHOR MongoDB, Inc .SH COPYRIGHT 2017-present, MongoDB, Inc .\" Generated by docutils manpage writer. .