43class MONGOCXX_API
uri {
52 static const std::string k_default_uri;
87 std::
string auth_mechanism() const;
94 std::
string auth_source() const;
101 std::vector<
host> hosts() const;
126 std::
string password() const;
147 std::
string replica_set() const;
156 MONGOCXX_DEPRECATED
bool ssl() const;
170 std::
string to_string() const;
177 std::
string username() const;
191 stdx::optional<stdx::string_view> appname() const;
198 stdx::optional<
bsoncxx::document::view> auth_mechanism_properties() const;
205 stdx::optional<
bsoncxx::document::view> credentials();
212 stdx::optional<std::int32_t> srv_max_hosts() const;
220 std::vector<stdx::string_view> compressors() const;
227 stdx::optional<std::int32_t> connect_timeout_ms() const;
234 stdx::optional<
bool> direct_connection() const;
241 stdx::optional<std::int32_t> heartbeat_frequency_ms() const;
248 stdx::optional<std::int32_t> local_threshold_ms() const;
255 stdx::optional<std::int32_t> max_pool_size() const;
262 stdx::optional<
bool> retry_reads() const;
269 stdx::optional<
bool> retry_writes() const;
276 stdx::optional<std::int32_t> server_selection_timeout_ms() const;
283 stdx::optional<
bool> server_selection_try_once() const;
290 stdx::optional<std::int32_t> socket_timeout_ms() const;
297 stdx::optional<
bool> tls_allow_invalid_certificates() const;
304 stdx::optional<
bool> tls_allow_invalid_hostnames() const;
311 stdx::optional<stdx::string_view> tls_ca_file() const;
318 stdx::optional<stdx::string_view> tls_certificate_key_file() const;
325 stdx::optional<stdx::string_view> tls_certificate_key_file_password() const;
333 stdx::optional<
bool> tls_disable_certificate_revocation_check() const;
340 stdx::optional<
bool> tls_disable_ocsp_endpoint_check() const;
347 stdx::optional<
bool> tls_insecure() const;
354 stdx::optional<std::int32_t> wait_queue_timeout_ms() const;
361 stdx::optional<std::int32_t> zlib_compression_level() const;
367 class MONGOCXX_PRIVATE impl;
369 MONGOCXX_PRIVATE
uri(std::unique_ptr<impl>&& implementation);
371 std::unique_ptr<impl> _impl;