1
0
Fork 0
mirror of https://github.com/mmumshad/ansible-playable.git synced 2025-02-15 04:42:05 +00:00
ansible-playable/server/api/system/system.events.js
2017-07-11 11:58:56 -04:00

35 lines
654 B
JavaScript

/**
* System model events
*/
'use strict';
import {EventEmitter} from 'events';
var SystemEvents = new EventEmitter();
// Set max event listeners (0 == unlimited)
SystemEvents.setMaxListeners(0);
// Model events
var events = {
save: 'save',
remove: 'remove'
};
// Register the event emitter to the model events
function registerEvents(System) {
for(var e in events) {
let event = events[e];
System.post(e, emitEvent(event));
}
}
function emitEvent(event) {
return function(doc) {
SystemEvents.emit(event + ':' + doc._id, doc);
SystemEvents.emit(event, doc);
};
}
export {registerEvents};
export default SystemEvents;