20#include "mongo/client/export_macros.h"
21#include "mongo/logger/log_domain.h"
22#include "mongo/logger/message_log_domain.h"
23#include "mongo/stdx/functional.h"
38 static const unsigned int kDefaultAutoShutdownGracePeriodMillis = 0;
39 static const int kDefaultDefaultLocalThresholdMillis = 15;
42 typedef std::auto_ptr<logger::MessageLogDomain::EventAppender> LogAppenderPtr;
43 typedef stdx::function<LogAppenderPtr()> LogAppenderFactory;
95 bool callShutdownAtExit()
const;
103 unsigned int autoShutdownGracePeriodMillis()
const;
115 int defaultLocalThresholdMillis()
const;
140 return SSLMode() != kSSLDisabled;
148 const bool FIPSMode()
const;
155 const std::string& SSLCAFile()
const;
162 const std::string& SSLPEMKeyFile()
const;
169 const std::string& SSLPEMKeyPassword()
const;
176 const std::string& SSLCRLFile()
const;
183 const bool SSLAllowInvalidCertificates()
const;
190 const bool SSLAllowInvalidHostnames()
const;
201 const LogAppenderFactory& logAppenderFactory()
const;
209 logger::LogSeverity minLoggedSeverity()
const;
220 bool validateObjects()
const;
223 bool _callShutdownAtExit;
224 unsigned int _autoShutdownGracePeriodMillis;
227 std::string _sslCAFile;
228 std::string _sslPEMKeyFile;
229 std::string _sslPEMKeyPassword;
230 std::string _sslCRLFile;
231 bool _sslAllowInvalidCertificates;
232 bool _sslAllowInvalidHostnames;
233 int _defaultLocalThresholdMillis;
234 LogAppenderFactory _appenderFactory;
235 logger::LogSeverity _minLoggedSeverity;
236 bool _validateObjects;
The Options structure is passed to mongo::client::initialize to configure various properties and conf...
Definition options.h:32
Options & setSSLAllowInvalidCertificates(bool value=true)
When set true, SSL certificate validation is disabled.
Options & setSSLMode(SSLModes sslMode=kSSLRequired)
If set to kSSLRequired, the driver will use SSL when connecting.
Options & setValidateObjects(bool value=true)
Configure whether BSON objects returned from the server should be validated.
static const Options & current()
Obtains the currently configured options for the driver.
Options & setDefaultLocalThresholdMillis(int millis)
Set the default threshold to consider a node local.
SSLModes
The possible modes for SSL support in an SSL enabled build of the driver.
Definition options.h:63
@ kSSLDisabled
Don't attempt to make SSL connections, or require SSL support of the server.
Definition options.h:66
DefaultPorts
The default ports where different mongodb servers tend to run.
Definition options.h:56
Options & setCallShutdownAtExit(bool value=true)
If true, the driver will automatically schedule a client::shutdown via 'std::atexit'.
Options & setSSLCRLFile(const std::string &fileName)
Configure the SSL CRL file to use.
Options & setSSLPEMKeyPassword(const std::string &password)
Configure the SSL PEM key password.
Options & setSSLPEMKeyFile(const std::string &fileName)
Configure the SSL PEM key file to use.
Options & setAutoShutdownGracePeriodMillis(unsigned int millis)
The grace period used when calling client::shutdown from atexit.
Options & setLogAppenderFactory(const LogAppenderFactory &factory)
Provide a factory for a log appender to configure logging.
Options()
Constructs a default options object with default values for all options.
Options & setSSLCAFile(const std::string &fileName)
Configure the SSL CA file to use.
Options & setFIPSMode(bool value=true)
Sets whether to operate in FIPS mode.
Options & setMinLoggedSeverity(logger::LogSeverity level)
Specify the minimum severity of messages that will be logged, if logging is enabled.
bool SSLEnabled() const
A convenience: returns true if SSL is not disabled (preferred or required).
Definition options.h:139
Options & setSSLAllowInvalidHostnames(bool value=true)
When set true, SSL hostname validation is disabled.
the main MongoDB namespace
Definition bulk_operation_builder.h:24