0.6.2 • Published 3 years ago

simple-mongodb-helper v0.6.2

Weekly downloads
12
License
ISC
Repository
-
Last release
3 years ago

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
0.6.2

3 years ago

0.6.1

4 years ago

0.5.8

4 years ago

0.5.9

4 years ago

0.5.9-1

4 years ago

0.6.0

4 years ago

0.5.7

4 years ago

0.5.6

4 years ago

0.5.5

4 years ago

0.5.4

4 years ago

0.5.3

4 years ago

0.5.2

4 years ago

0.5.1

4 years ago

0.5.0

4 years ago

0.3.3

5 years ago

0.3.2

5 years ago

0.3.1

5 years ago

0.3.0

5 years ago