ipc-events
v1.1.0
Published
Inter process (IPC) event emitter
Downloads
4
Maintainers
Readme
IPC event emitter
Minimal and fast event emitter that communicate with other process through IPC.
Getting started
Install
npm install ipc-events --save
Usage
var spawn = require('child_process').spawn;
var Ipc = require('ipc-events');
var a = new Ipc(process);
var b = new Ipc(spawn(/* some command */, {
stdio: [null, null, null, 'ipc']
}));
a.on('say-hello', function(data) {
console.log(data.hello); // Hello from "b"!
});
b.on('say-hello', function(data) {
console.log(data.hello); // Hello from "a"!
});
a.send('say-hello', {
hello: 'Hello from "a"!'
});
b.send('say-hello', {
hello: 'Hello from "b"!'
});
Listen `once'
function myCallback(data) {
console.log(data.hello); // Hello from "a"!
}
// Add listener, defined to be triggered "once"
b.once('say-hello', myCallback);
// myCallback() is invoked and the listener is removed
a.send('say-hello', {
hello: 'Hello from "a"!'
});
// myCallback() is not called because it is no longer listening on this event
a.send('say-hello', {
hello: 'Hello from "a"!'
});
Get all listeners of an event
console.log(a.listeners('say-hello'));
Remove a listener
function myCallback(data) {
// some code ...
}
// add
a.on('say-hello', myCallback);
// remove
a.removeListener('say-hello', myCallback);
Unit tests
ipc-events
is unit tested with Unit.js
Run the tests
cd node_modules/ipc-events
npm test
LICENSE
MIT (c) 2014, Nicolas Tallefourtane.
Author
| | |---| | Nicolas Talle | | |