dambreaker-mongo
Version:
Mongo client for dambreaker
94 lines (71 loc) • 2.23 kB
Markdown
[](https://www.npmjs.com/package/mongodb) service for [dambreaker](https://www.npmjs.com/package/dambreaker).
[![NPM][npm-image]][npm-url]
[![Build Status][travis-image]][travis-url]
[![Coverage Status][coveralls-image]][coveralls-url]
* [dambreaker](https://www.npmjs.com/package/dambreaker)
* [Mongo API](http://mongodb.github.io/node-mongodb-native/2.3/api/)
* Singleton
```js
return $mongo.db.then(db => {
//db is a singleton Mongo Db instance
});
```
```dambreaker.json
{
"mongo": {
"connectionString": "mongodb://localhost:27017/database"
},
}
```
```services.json
{
"services": [
{ "name": "mongo", "location": "dambreaker-mongo" }
]
}
```
Or in javascript
```js
const DamBreaker = require("dambreaker");
const dambreaker = new DamBreaker();
dambreaker.inject("mongo" ,"dambreaker-mongo");
```
```js
class Api {
constructor(mongo) { //mongo service is injected by dambreaker DI
super("<collectionName>", mongo);
};
```
```js
const { CRUD } = require("dambreaker-mongo");
class Api extends CRUD {
constructor(mongo) {
this.mongo = mongo;
};
};
```
```bash
$ npm install dambreaker-mongo
```
To run our tests, clone the dambreaker-mongo repo and install the dependencies.
```bash
$ git clone https://github.com/BenoitClaveau/dambreaker-mongo --depth 1
$ cd dambreaker-mongo
$ npm install
$ mongod --dbpath ./data/db
$ node.exe "../node_modules/mocha/bin/mocha" tests
```
[]: https://img.shields.io/npm/v/dambreaker-mongo.svg
[]: https://npmjs.org/package/dambreaker-mongo
[]: https://travis-ci.org/BenoitClaveau/dambreaker-mongo.svg?branch=master
[]: https://travis-ci.org/BenoitClaveau/dambreaker-mongo
[]: https://coveralls.io/repos/BenoitClaveau/dambreaker-mongo/badge.svg?branch=master&service=github
[]: https://coveralls.io/github/BenoitClaveau/dambreaker-mongo?branch=master