/**
* @private
*/
Ext.define('Ext.event.publisher.Publisher', {
targetType: '',
idSelectorRegex: /^#([\w\-]+)$/i,
constructor: function() {
var handledEvents = this.handledEvents,
handledEventsMap,
i, ln, event;
handledEventsMap = this.handledEventsMap = {};
for (i = 0,ln = handledEvents.length; i < ln; i++) {
event = handledEvents[i];
handledEventsMap[event] = true;
}
this.subscribers = {};
return this;
},
handles: function(eventName) {
var map = this.handledEventsMap;
return !!map[eventName] || !!map['*'] || eventName === '*';
},
getHandledEvents: function() {
return this.handledEvents;
},
setDispatcher: function(dispatcher) {
this.dispatcher = dispatcher;
},
subscribe: function() {
return false;
},
unsubscribe: function() {
return false;
},
unsubscribeAll: function() {
delete this.subscribers;
this.subscribers = {};
return this;
},
notify: function() {
return false;
},
getTargetType: function() {
return this.targetType;
},
dispatch: function(target, eventName, args) {
this.dispatcher.doDispatchEvent(this.targetType, target, eventName, args);
}
});