/usr/include/libmongoc-1.0/mongoc-client.h is in libmongoc-dev 1.3.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | /*
* Copyright 2013 MongoDB, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef MONGOC_CLIENT_H
#define MONGOC_CLIENT_H
#if !defined (MONGOC_INSIDE) && !defined (MONGOC_COMPILATION)
# error "Only <mongoc.h> can be included directly."
#endif
#include <bson.h>
#include "mongoc-collection.h"
#include "mongoc-config.h"
#include "mongoc-cursor.h"
#include "mongoc-database.h"
#include "mongoc-gridfs.h"
#include "mongoc-index.h"
#include "mongoc-read-prefs.h"
#ifdef MONGOC_ENABLE_SSL
# include "mongoc-ssl.h"
#endif
#include "mongoc-stream.h"
#include "mongoc-uri.h"
#include "mongoc-write-concern.h"
#include "mongoc-read-concern.h"
BSON_BEGIN_DECLS
#define MONGOC_NAMESPACE_MAX 128
#ifndef MONGOC_DEFAULT_CONNECTTIMEOUTMS
#define MONGOC_DEFAULT_CONNECTTIMEOUTMS (10 * 1000L)
#endif
#ifndef MONGOC_DEFAULT_SOCKETTIMEOUTMS
/*
* NOTE: The default socket timeout for connections is 5 minutes. This
* means that if your MongoDB server dies or becomes unavailable
* it will take 5 minutes to detect this.
*
* You can change this by providing sockettimeoutms= in your
* connection URI.
*/
#define MONGOC_DEFAULT_SOCKETTIMEOUTMS (1000L * 60L * 5L)
#endif
/**
* mongoc_client_t:
*
* The mongoc_client_t structure maintains information about a connection to
* a MongoDB server.
*/
typedef struct _mongoc_client_t mongoc_client_t;
/**
* mongoc_stream_initiator_t:
* @uri: The uri and options for the stream.
* @host: The host and port (or UNIX domain socket path) to connect to.
* @user_data: The pointer passed to mongoc_client_set_stream_initiator.
* @error: A location for an error.
*
* Creates a new mongoc_stream_t for the host and port. Begin a
* non-blocking connect and return immediately.
*
* This can be used by language bindings to create network transports other
* than those built into libmongoc. An example of such would be the streams
* API provided by PHP.
*
* Returns: A newly allocated mongoc_stream_t or NULL on failure.
*/
typedef mongoc_stream_t *(*mongoc_stream_initiator_t) (const mongoc_uri_t *uri,
const mongoc_host_list_t *host,
void *user_data,
bson_error_t *error);
mongoc_client_t *mongoc_client_new (const char *uri_string);
mongoc_client_t *mongoc_client_new_from_uri (const mongoc_uri_t *uri);
const mongoc_uri_t *mongoc_client_get_uri (const mongoc_client_t *client);
void mongoc_client_set_stream_initiator (mongoc_client_t *client,
mongoc_stream_initiator_t initiator,
void *user_data);
mongoc_cursor_t *mongoc_client_command (mongoc_client_t *client,
const char *db_name,
mongoc_query_flags_t flags,
uint32_t skip,
uint32_t limit,
uint32_t batch_size,
const bson_t *query,
const bson_t *fields,
const mongoc_read_prefs_t *read_prefs);
void mongoc_client_kill_cursor (mongoc_client_t *client,
int64_t cursor_id) BSON_GNUC_DEPRECATED;
bool mongoc_client_command_simple (mongoc_client_t *client,
const char *db_name,
const bson_t *command,
const mongoc_read_prefs_t *read_prefs,
bson_t *reply,
bson_error_t *error);
void mongoc_client_destroy (mongoc_client_t *client);
mongoc_database_t *mongoc_client_get_database (mongoc_client_t *client,
const char *name);
mongoc_database_t *mongoc_client_get_default_database (mongoc_client_t *client);
mongoc_gridfs_t *mongoc_client_get_gridfs (mongoc_client_t *client,
const char *db,
const char *prefix,
bson_error_t *error);
mongoc_collection_t *mongoc_client_get_collection (mongoc_client_t *client,
const char *db,
const char *collection);
char **mongoc_client_get_database_names (mongoc_client_t *client,
bson_error_t *error);
mongoc_cursor_t *mongoc_client_find_databases (mongoc_client_t *client,
bson_error_t *error);
bool mongoc_client_get_server_status (mongoc_client_t *client,
mongoc_read_prefs_t *read_prefs,
bson_t *reply,
bson_error_t *error);
int32_t mongoc_client_get_max_message_size (mongoc_client_t *client) BSON_GNUC_DEPRECATED;
int32_t mongoc_client_get_max_bson_size (mongoc_client_t *client) BSON_GNUC_DEPRECATED;
const mongoc_write_concern_t *mongoc_client_get_write_concern (const mongoc_client_t *client);
void mongoc_client_set_write_concern (mongoc_client_t *client,
const mongoc_write_concern_t *write_concern);
const mongoc_read_concern_t *mongoc_client_get_read_concern (const mongoc_client_t *client);
void mongoc_client_set_read_concern (mongoc_client_t *client,
const mongoc_read_concern_t *read_concern);
const mongoc_read_prefs_t *mongoc_client_get_read_prefs (const mongoc_client_t *client);
void mongoc_client_set_read_prefs (mongoc_client_t *client,
const mongoc_read_prefs_t *read_prefs);
#ifdef MONGOC_ENABLE_SSL
void mongoc_client_set_ssl_opts (mongoc_client_t *client,
const mongoc_ssl_opt_t *opts);
#endif
BSON_END_DECLS
#endif /* MONGOC_CLIENT_H */
|