Skip to content

Commit

Permalink
lib/hermes-bus.js: Fixed bug in hardReset where it crashed if no even…
Browse files Browse the repository at this point in the history
…tHandlers were registered in a busline.
  • Loading branch information
jahnestacado authored and Ioannis Tzanellis committed Jun 3, 2016
1 parent cbb77de commit 6e59202
Showing 1 changed file with 10 additions and 11 deletions.
21 changes: 10 additions & 11 deletions lib/hermes-bus.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ HermesBus.prototype.subscribe = function subscribe() {
var subscribedObject = subscribedObjectInfo.subscribedObject;

if(subscribedObject){
!observerBusLines[buslineName] && _utilityBelt.initBusline(buslineName);
_utilityBelt.initBusline(buslineName);

var events = _utilityBelt.createEventSpecs(subscribedObject);
events.forEach(function(eventSpecs){
Expand Down Expand Up @@ -92,7 +92,7 @@ HermesBus.prototype.unsubscribe = function unsubscribe() {

HermesBus.prototype.reset = function reset() {
var self = this;
observerBusLines[DEFAULT_BUSLINE] = _utilityBelt.initBusline(DEFAULT_BUSLINE);
_utilityBelt.initBusline(DEFAULT_BUSLINE);
Object.keys(eventHandlers[DEFAULT_BUSLINE]).forEach(function(eventName) {
delete eventHandlers[DEFAULT_BUSLINE][eventName];
var registeredFunctionName = _utilityBelt.eventToFunctionName(eventName);
Expand Down Expand Up @@ -167,10 +167,6 @@ var _utilityBelt = {
};
},
registerEventHandler: function createTrigger(context, busline, eventName){
if(!eventHandlers[busline]){
eventHandlers[busline] = {};
}

if(!eventHandlers[busline][eventName]){
var triggerFunctionName = _utilityBelt.eventToFunctionName(eventName);

Expand Down Expand Up @@ -322,11 +318,14 @@ var _utilityBelt = {
delete context[busline];
},
initBusline: function initBusline(buslineName){
observerBusLines[buslineName] = {
observers: [],
beforeHooks: [],
afterHooks: []
};
if(!observerBusLines[buslineName]){
observerBusLines[buslineName] = {
observers: [],
beforeHooks: [],
afterHooks: []
};
eventHandlers[buslineName] = {};
}
},
firstLetterToUpperCase: function firstLetterToUpperCase(eventName) {
return eventName.charAt(0).toUpperCase() + eventName.slice(1);
Expand Down

0 comments on commit 6e59202

Please sign in to comment.