UNPKG

@dolittle/sdk.resources

Version:

Dolittle is a decentralized, distributed, event-driven microservice platform built to harness the power of events.

36 lines 2.36 kB
"use strict"; // Copyright (c) Dolittle. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. Object.defineProperty(exports, "__esModule", { value: true }); exports.MongoDBResource = void 0; const IMongoDBResource_1 = require("../IMongoDBResource"); /** * Represents an implementation of {@link IMongoDBResource}. */ class MongoDBResource extends IMongoDBResource_1.IMongoDBResource { /** * Initialises an instance of the {@link MongoDBResource} class. * @param {MongoClient} _client - The connected MongoDB client for this resource. */ constructor(_client) { super(); this._client = _client; } getDatabase(maybeDatabaseSettingsCallback) { const settings = this.getDatabaseSettings(maybeDatabaseSettingsCallback); return this.getDatabaseFromClient(this._client, settings); } getDatabaseSettings(databaseSettingsCallback) { if (!databaseSettingsCallback) { return undefined; } const options = {}; databaseSettingsCallback(options); return options; } getDatabaseFromClient(client, dbOptions) { return client.db(undefined, dbOptions); } } exports.MongoDBResource = MongoDBResource; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9uZ29EQlJlc291cmNlLmpzIiwic291cmNlUm9vdCI6Ii4uLyIsInNvdXJjZXMiOlsiTW9uZ29EQi9JbnRlcm5hbC9Nb25nb0RCUmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLCtDQUErQztBQUMvQyxxR0FBcUc7OztBQUlyRywwREFBdUQ7QUFHdkQ7O0dBRUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEsbUNBQWdCO0lBQ2pEOzs7T0FHRztJQUNILFlBQTZCLE9BQW9CO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBRGlCLFlBQU8sR0FBUCxPQUFPLENBQWE7SUFFakQsQ0FBQztJQUtELFdBQVcsQ0FBQyw2QkFBd0Q7UUFDaEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLDZCQUE2QixDQUFDLENBQUM7UUFDekUsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU8sbUJBQW1CLENBQUMsd0JBQW1EO1FBQzNFLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtZQUMzQixPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUVELE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNuQix3QkFBd0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsQyxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBRU8scUJBQXFCLENBQUMsTUFBbUIsRUFBRSxTQUFxQjtRQUNwRSxPQUFPLE1BQU0sQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7Q0FDSjtBQTlCRCwwQ0E4QkMifQ==