2014-10-22 17:07:09 +02:00
|
|
|
var Promise = require('bluebird'),
|
|
|
|
util = require('util'),
|
|
|
|
EventEmitter = require('events').EventEmitter;
|
2014-10-22 15:35:22 +02:00
|
|
|
|
2014-10-22 16:26:36 +02:00
|
|
|
function EventStore() {
|
2014-10-22 15:35:22 +02:00
|
|
|
EventEmitter.call(this);
|
|
|
|
}
|
2014-10-22 16:26:36 +02:00
|
|
|
util.inherits(EventStore, EventEmitter);
|
2014-10-22 15:35:22 +02:00
|
|
|
|
2014-10-23 10:32:13 +02:00
|
|
|
EventStore.prototype.create = function (event) {
|
2014-10-22 17:09:50 +02:00
|
|
|
return new Promise(function (resolve) {
|
2014-10-22 17:07:09 +02:00
|
|
|
this.emit(event.type, event);
|
|
|
|
resolve();
|
|
|
|
}.bind(this));
|
2014-10-22 15:35:22 +02:00
|
|
|
};
|
|
|
|
|
2014-10-22 16:26:36 +02:00
|
|
|
module.exports = new EventStore();
|