var merge = require('react/lib/merge');
var EventEmitter = require('events').EventEmitter;
var _state = {};
var _EVENT_CHANGE = 'testing:change';
module.exports = merge(EventEmitter.prototype, {
get: function(name) {
return name ? _state[name] : _state;
},
set: function(name, value) {
_state[name] = value;
var arg = {};
arg[name] = value;
this.emitChange(arg);
},
addChangeListener: function(callback) {
this.on(_EVENT_CHANGE, callback);
},
removeChangeListener: function(callback) {
this.removeListener(_EVENT_CHANGE, callback);
},
emitChange: function(arg) {
this.emit(_EVENT_CHANGE, arg);
}
});