0.3.2 • Published 7 years ago

@rainder/callbacks v0.3.2

Weekly downloads
1
License
ISC
Repository
github
Last release
7 years ago

Callbacks

Callback implementation with native Promises

Example

const co = require('co');
const Callbacks = require('@rainder/callbacks');

const callbacks = new Callbacks();

co(function *() {
  //define data to work with
  const ID = '10432';
  const DATA = 'data1';
  
  //create a callback
  const promise = callbacks.create(ID);
  
  setTimeout(function () {
    callbacks.getCallback(ID).resolve(DATA);
  }, 100);
  const result = yield promise;
  
  result.should.equals(DATA); //true
}).catch(err => console.error(err.stack));

Callbacks

new Callbacks(): Callbacks

static Callbacks.create(): Callbacks

create(id: String, timeout: Number = 30000): Promise

getCallback(id: String): Callback

Callback

new Callback(id: String, timeout: Number, onDestroy: Function)

resolve(data)

reject(err)

destroy()