Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
event-emitter-grouped
Advanced tools
Emit events in serial or parallel with support for synchronous and asynchronous listeners
Emit events in serial or parallel with support for synchronous and asynchronous listeners
require('event-emitter-grouped')
npm install --save event-emitter-grouped
require('event-emitter-grouped')
ender add event-emitter-grouped
require('event-emitter-grouped')
component install bevry/event-emitter-grouped
require('event-emitter-grouped')
bower install event-emitter-grouped
// Importer
var EventEmitterGrouped = require('event-emitter-grouped').EventEmitterGrouped;
// Instantiate a new instance
var emitter = new EventEmitterGrouped();
// Bind an asynchronous event
emitter.on('hello', function(next){
console.log('\tasync started');
setTimeout(function(){
console.log('\tasync finished');
next();
}, 1000);
});
// Bind a synchronous event
emitter.on('hello', function(){
console.log('\tsync started and finished');
});
// Bind a prioritized event
vipListener = function(){
console.log('\tvip started and finished');
};
vipListener.priority = 1;
emitter.on('hello', vipListener);
// Emit the events in serial (one after the other in a waiting fashion)
console.log('hello in serial started');
emitter.emitSerial('hello', function(err){
console.log('hello in serial finished');
// Emit the events in parallel (all at once)
console.log('hello in parallel started');
emitter.emitParallel('hello', function(err){
console.log('hello in parallel finished');
});
});
/* Outputs:
hello in serial started
vip started and finished
async started
async finished
sync started and finished
hello in serial finished
hello in parallel started
vip started and finished
async started
sync started and finished
async finished
hello in parallel finished
*/
getListenerGroup(eventName, args..., next?)
- returns a TaskGroup where each listener is a task, ordered by the highest priority listeners first
eventName
is the event that we should get the listeners forargs...
is an optional set of arguments that should be passed to the listeners when they are executednext
is an optional completion callback that will fire once all the tasks/listeners have compeletedoff
- alias for events.EventEmitter.prototype.removeListeneremitSerial(eventName, args..., next?)
- fetch the listener group and execute it in serialemitParallel(eventName, args..., next?)
- fetch the listener group and execute it in parallelDiscover the change history by heading on over to the History.md
file.
Discover how you can contribute by heading on over to the Contributing.md
file.
These amazing people are maintaining this project:
No sponsors yet! Will you be the first?
These amazing people have contributed code to this project:
Licensed under the incredibly permissive MIT license
Copyright © 2013+ Bevry Pty Ltd us@bevry.me (http://bevry.me)
Copyright © 2011-2012 Benjamin Lupton b@lupton.cc (http://balupton.com)
v2.3.1 2013 October 27
FAQs
Emit events in serial or parallel with support for synchronous and asynchronous listeners
The npm package event-emitter-grouped receives a total of 162 weekly downloads. As such, event-emitter-grouped popularity was classified as not popular.
We found that event-emitter-grouped demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.