connectMongoDB

Connects to a MongoDB instance.

If the host/port form is used, default settings will be used, which enable safe updates, but no fsync. By specifying a URL instead, it is possible to fully customize the settings. See http://www.mongodb.org/display/DOCS/Connections for the complete set of options. Note that 'sslverifycertificate' is only present in some client bindings, including here.

Note that the returned MongoClient uses a vibe.core.connectionpool.ConnectionPool internally to create and reuse connections as necessary. Thus, the MongoClient instance can - and should - be shared among all fibers in a thread by storing in in a thread local variable.

Authentication: Authenticated connections are supported by using a URL connection string such as "mongodb://user:password@host". SCRAM-SHA-1 is used by default.

Parameters

settings MongoClientSettings

An object containing the full set of possible configuration options.

Return Value

A new MongoClient instance that can be used to access the database.

Throws

Throws an exception if a mongodb:// URL is given and the URL cannot be parsed. An exception will not be thrown if called with a hostname and port.

Examples

// connecting with default settings:
auto client = connectMongoDB("127.0.0.1");
auto users = client.getCollection("users");
users.insert(Bson("peter"));
// connecting using the URL form with custom settings
auto client = connectMongoDB("mongodb://localhost/?slaveOk=true");
// connecting with SSL encryption enabled and verification off
auto client = connectMongoDB("mongodb://localhost/?ssl=true&sslverifycertificate=false");

Meta