This package has been deprecated

Author message:

Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

eventm

1.3.1 • Public • Published

Event Manager

Eventm help you to manage all evenements in your code. The library store the state, data returned and the callback stack for you.
Can be used like RabbitMQ in your local project.

☁️ Installation

$ npm install eventm

⚙️ Examples

// -------------- BEHIND
const Eventm = require('eventm');
const mevent = new Eventm();
 
const myLib = new function()
{
    const eventSucessCb = mevent.create('tryEvenSuccessCallback');
    this.tryEvenSuccessCallback = (cb) => eventSucessCb.push(cb);
    setTimeout(() => mevent.getEvent('tryEvenSuccessCallback').resolve('tryEvenSuccessCallback function executed'), 1000);
 
    this.tryEventMultiParams = (cb) => mevent.create('tryEventMultiParams', { promise: false }).push(cb);
    setTimeout(() => mevent.getEvent('tryEventMultiParams').resolve('tryEventMultiParams function executed'), 2000);
 
    this.tryEventKeepSession = (cb) => mevent.create('tryEventKeepSession').push(cb);
    setTimeout(() => mevent.getEvent('tryEventKeepSession').resolve('tryEventKeepSession function executed'), 3000);
 
    this.tryEventDontKeepSession = (cb) => mevent.create('tryEventDontKeepSession', { keepSession: false }).push(cb);
    setTimeout(() => mevent.getEvent('tryEventDontKeepSession').resolve('tryEventDontKeepSession function executed'), 4000);
 
    this.tryAnEventInReject = () => mevent.create('tryAnEventInReject').getPromise();
    setTimeout(() => mevent.getEvent('tryAnEventInReject').reject('tryAnEventInReject function executed'), 7000);
}
 
// -------------- AHEAD
myLib.tryEvenSuccessCallback(data => {
    console.log(data);
    myLib.tryEventMultiParams(async (err, data) => {
        console.log(err, data);
        data = await myLib.tryEventKeepSession();
        console.log(data);
        data = await myLib.tryEventKeepSession();
        console.log(data);
        data = await myLib.tryEventDontKeepSession();
        console.log(data);
        myLib.tryEventDontKeepSession(() => {
            console.log('tryEventDontKeepSession 2');
        });
        await myLib.tryAnEventInReject();
    });
});
 

📝 Usage

Root level

Name Description
create(string: name, object: options = {}): Event Level create method is used to create a new event
getEvent(string: name): Event Level getEvent method is used to retrieve event level

Event level

Name Description
resolve(any: data = undefined): undefined resolve method is used to set a success response
resolveForced(any: data = undefined): undefined resolveForced method is used to set a success response in forced mode (it means: if there are already a statement then this forces the system to recall all callbacks with the new paramter). Obviously it doesn't works for promise.
reject(any: data = undefined): undefined reject method is used to set an error response
push(function: callback): Promise push method is used to add new callback

Options

Name Default Description
keepSession true true = If the callback is alreayd executed, keepSession keep the session open for the futur callback
promise true true = The callback is called with a single paramter - false = The callback is call with (err, data) => {} parameters

Package Sidebar

Install

npm i eventm

Weekly Downloads

1

Version

1.3.1

License

ISC

Unpacked Size

9.69 kB

Total Files

5

Last publish

Collaborators

  • dobobaie