simple-mongodb-helper
TypeScript icon, indicating that this package has built-in type declarations

0.6.2 • Public • Published

simple-mongodb-helper

Synopsis

Hello! Not a lot of time to write this readme, but try to make some updates about missing documented elements when times... This simple helper add some features to native mongodb driver as auto reconnect methods, eval and some basics reformated options

Installation

npm i simple-mongodb-helper

Usage

init

const  mongoDB_class = require('simple-mongodb-helper');
const  mongoclient = mongoDB_class.default();

or

import  mongoDB  from  'simple-mongodb-helper';
const  mongoclient: any = mongoDB();

connect

mongoclient.connect(param)

let params = {
  "host": "3.2.1.0",
  "port": 27017,
  "user": "zzzzz",
  "password": "*****",
  "authSource": "admin",
  "dbName": "xxxxx",
  "poolSize": 5000,
  "keepAlive": 30000,
  "socketTimeoutMS": 1,
  "forceReconnect": true,
  "forceReconnectLimit": 1000,
  "replicaSet": "replication",
  "w": "majority",
  "readPreference": "primaryPreferred",
  ...
};
mongoclient.connect(param).then(() => {
  //...
}).catch((e: any) =>  {
  //...
});

This method create mongoclient.mDB witch is active mongoclient connexion

find

mongoclient.find(collection, filter, projection, sort, limit)

mongoclient.find('test',{_id:'test'},{_id:0,order:1,info:1},{order:-1},10).then((result) => {
  //...
}).catch((e: any) =>  {
  //...
});

aggregate

mongoclient.aggregate(collection, AggResquests)

mongoclient.aggregate('test',[{...},{...}]).then((result) => {
  //...
}).catch((e: any) =>  {
  //...
});

insert

mongoclient.insert(collection, documents)

mongoclient.insert('test',[{"a":"b"},{"c":"d"}]).then((result) => {
  //...
}).catch((e: any) =>  {
  //...
});

update

mongoclient.update(collection, filter, values, upsert)

mongoclient.update('test',{_id:'test'},{order:2,info:"new test"},true).then((result) => {
  //...
}).catch((e: any) =>  {
  //...
});

eval raw request

mongoclient.eval(rawScript, inputs)

// inputs is an object
let inputs = { database : "exemple", collection" : "demo" }
// rawscript must return a promise
let rawScript = "db.db(inputs.database).collection(inputs.collection).find({}).toArray()";
mongoclient.eval(rawScript,inputs).then((result) => {
  //...
}).catch((e: any) =>  {
  //...
});

replace

mongoclient.replace(collection, filter, to)

mongoclient.replace('test',{_id:'test'},{ 'element':'test'}).then((result) => {
  //...
}).catch((e: any) =>  {
  //...
});

others : native exposed

MongoClient,
ObjectID,
ObjectId,
MongoError,
MongoNetworkError,
Db,
Server,
ReplSet,
Mongos,
ReadPreference,
Logger,
AggregationCursor,
CommandCursor,
GridFSBucket,
Binary,
Code,
DBRef,
Double,
Int32,
Long,
MinKey,
MaxKey,
Timestamp,
Decimal128,
Cursor

Readme

Keywords

none

Package Sidebar

Install

npm i simple-mongodb-helper

Weekly Downloads

0

Version

0.6.2

License

ISC

Unpacked Size

26.1 kB

Total Files

4

Last publish

Collaborators

  • darkbleu
  • agenouel