@angstone/monostone
Version:
monolitic event-sourced framework
56 lines • 2.25 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
// It is recommended to use the Container component in Node.js
const mongodb = require("mongodb");
const mongoOptions = {
db: process.env.MONGO_DATABASE || "dev",
host: process.env.MONGO_HOST || "localhost",
password: process.env.MONGO_PASSWORD || "password",
poolSize: +(process.env.POOL_SIZE || 10),
port: "" + (process.env.MONGO_PORT || 27017),
// ssl: process.env.MONGO_USE_SSL || "false",
user: process.env.MONGO_USER || "admin",
};
// Connection URL
const url = "mongodb://" +
mongoOptions.user + ":" +
mongoOptions.password + "@" +
mongoOptions.host + ":" +
mongoOptions.port;
class IStoreState {
}
const storeState = {
mongoClient: undefined,
db: undefined,
};
// Create the db connection
const connectStore = () => __awaiter(this, void 0, void 0, function* () {
storeState.mongoClient = yield mongodb.MongoClient.connect(url, {
poolSize: mongoOptions.poolSize,
}).then((client) => {
storeState.db = client.db(mongoOptions.db);
return client;
});
});
exports.connectStore = connectStore;
const closeStore = () => __awaiter(this, void 0, void 0, function* () {
if (storeState.mongoClient) {
yield storeState.mongoClient.close();
}
});
exports.closeStore = closeStore;
const dbname = mongoOptions.db;
exports.dbname = dbname;
const db = () => storeState.db || new mongodb.Db('shit', new mongodb.Server('neverhost', 666));
exports.db = db;
const mongoClient = () => storeState.mongoClient;
exports.mongoClient = mongoClient;
//# sourceMappingURL=store.js.map
;