public class EventDispatcherImpl extends AbstractEventDispatcher
EventDispatcher| Modifier and Type | Field and Description | 
|---|---|
| static boolean | bDebugMode | 
| static java.lang.String | CONSUMER_DEF | 
| static java.lang.String | CONSUMER_OBJECT | 
| static java.lang.String | DOT_SEP | 
| static java.lang.String | EVENT_DEF | 
| static java.lang.String | EVENT_OBJECT | 
| protected DCBindingContainer | mBndContainer | 
| static java.lang.String | PAYLOAD | 
| static java.lang.String | PRODUCER_NAME | 
| Constructor and Description | 
|---|
| EventDispatcherImpl(DCBindingContainer container)constructor | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | _dbg_afterEvent(EventDefinition eventDef,
               Event eventObject,
               ConsumerDef consumerDef)For internal debugging purpose only | 
| protected void | _dbg_beforeEvent(Event eventObject,
                EventDefinition eventDef,
                java.lang.String qualifiedProducerName)For internal debugging purpose only | 
| void | addDynamicEventSubscription(java.lang.String containerName) | 
| protected EventNameResolver | createNameResolverInstance()createNameResolverInstance Returns a new DefaultEventNameResolver instance if it doesnt exixts | 
| void | dispatchEvent(java.util.ArrayList eventsDefsToHandle,
             Event eventObject,
             java.lang.String qualifiedProducerName)dispatchEvent this method starts dispatching the event to the current bindingcontainer and then to its parent | 
| protected void | dispatchEventForCurrentContainer(java.util.ArrayList eventsDefsToHandle,
                                Event eventObject,
                                java.lang.String qualifiedProducerName)dispatchEventForCurrentContainer this method given the event name and producer qualified name retrieves the ProducerDef in the EventMap | 
| protected void | dispatchEventForSubscription(ProducerDef prodDef,
                            EventDefinition eventDef,
                            Event eventObject)dispatchEventForSubscription this method calls dispatchEventToConsumer method | 
| void | dispatchEventForWildCards(java.util.ArrayList eventsDefsToHandle,
                         Event eventObject) | 
| void | dispatchEventFromChildContainer(java.util.ArrayList eventsDefsToHandle,
                               Event eventObject,
                               java.lang.String qualifiedProducerName)dispatchEventFromChildContainer this method dispatches if this container listens to events generated by child containers | 
| protected void | dispatchEventToChildForWildCards(DCBindingContainer regBnd,
                                java.util.ArrayList eventsDefsToHandle,
                                Event eventObject) | 
| protected void | dispatchEventToConsumer(ConsumerDef consumerDef,
                       Event eventObject)dispatchEventToConsumer() gets the consumer from the qualified name and invokes the event | 
| protected void | dispatchEventToParent(java.util.ArrayList eventsDefsToHandle,
                     Event eventObject,
                     java.lang.String qualifiedProducerName) | 
| protected ProducerDef | findMatchingSubscription(EventMapDef eMap,
                        java.lang.String eventName,
                        java.lang.String producerRefName) | 
| protected void | fireEvent(java.util.ArrayList eventDefList,
         Event eventObject)fireEvent starts propogating the events by constructing the Qualified producer name | 
| void | fireEvent(EventProducer producer,
         java.lang.Object payLoad)fireEvent starting point for the events to get propogated | 
| void | fireEvent(EventProducer producer,
         java.lang.Object payLoad,
         EventDefinition[] eventDefs)fireEvent starting point for the events to get propogated | 
| java.lang.String | getBindingContainerDefName()Deprecated. 
 Only for internal debug purpose. | 
| java.util.List<java.lang.String> | getDynamicEventSubscriptionList() | 
| EventNameResolver | getEventNameResolver()getEventNameResolver Returns the EventNameResolver which this EventDispatcherImpl has | 
| EventConsumer | getRegisteredEventConsumer(java.lang.String consumerName)getRegisteredEventConsumer used to get any consumer which is registered with EventHandler | 
| boolean | hasDynamicEventSubscription(java.lang.String name) | 
| protected void | invokeEvent(EventConsumer consumer,
           Event eventObject,
           java.util.HashMap consumerParamMap)invokeEvent passes on the control to the consumer to handle the event. | 
| void | processContextualEvents()processContextualEvents used to propagate queued events | 
| protected void | processContextualEventsToChildContainers(DCBindingContainer regBnd) | 
| void | queueEvent(EventProducer producer,
          java.lang.Object payLoad)queueEvent queues up the event to be invoked | 
| void | registerEventConsumer(EventConsumer consumer)registerEventConsumer used to register any consumer with EventHandler | 
| BindingContext | retrieveBindingContext(DCBindingContainer container) | 
| void | setEventNameResolver(EventNameResolver eventNameResolver)setEventNameResolver sets the EventNameResolver to this EventDispatcherImpl | 
| void | unRegisterEventConsumer(EventConsumer consumer)unRegisterEventConsumer used to unregister any consumer with EventHandler | 
public static final java.lang.String DOT_SEP
public static final java.lang.String PAYLOAD
public static final java.lang.String PRODUCER_NAME
public static final java.lang.String EVENT_OBJECT
public static final java.lang.String EVENT_DEF
public static final java.lang.String CONSUMER_DEF
public static final java.lang.String CONSUMER_OBJECT
public static final boolean bDebugMode
protected final DCBindingContainer mBndContainer
public EventDispatcherImpl(DCBindingContainer container)
container - DCBindingContainer@Deprecated public java.lang.String getBindingContainerDefName()
protected EventNameResolver createNameResolverInstance()
public EventNameResolver getEventNameResolver()
public void setEventNameResolver(EventNameResolver eventNameResolver)
eventNameResolver - EventNameResolverpublic void fireEvent(EventProducer producer, java.lang.Object payLoad)
producer - EventProducerpayLoad - Objectpublic void fireEvent(EventProducer producer, java.lang.Object payLoad, EventDefinition[] eventDefs)
producer - EventProducerpayLoad - Object PayloadeventDefs - EventDefinition arrayprotected void fireEvent(java.util.ArrayList eventDefList,
             Event eventObject)
eventDefList - ArrayListeventObject - Eventpublic void dispatchEvent(java.util.ArrayList eventsDefsToHandle,
                 Event eventObject,
                 java.lang.String qualifiedProducerName)
eventsDefsToHandle - ArrayList list of eventDef's to be handledeventObject - Event ObjectqualifiedProducerName - String has the qualified name of the Producerprotected void dispatchEventToParent(java.util.ArrayList eventsDefsToHandle,
                         Event eventObject,
                         java.lang.String qualifiedProducerName)
public void dispatchEventFromChildContainer(java.util.ArrayList eventsDefsToHandle,
                                   Event eventObject,
                                   java.lang.String qualifiedProducerName)
eventsDefsToHandle - ArrayList list of eventDef's to be handledeventObject - Event ObjectqualifiedProducerName - String has the qualified name of the Producerprotected void _dbg_beforeEvent(Event eventObject, EventDefinition eventDef, java.lang.String qualifiedProducerName)
protected void _dbg_afterEvent(EventDefinition eventDef, Event eventObject, ConsumerDef consumerDef)
protected void dispatchEventForCurrentContainer(java.util.ArrayList eventsDefsToHandle,
                                    Event eventObject,
                                    java.lang.String qualifiedProducerName)
eventsDefsToHandle - ArrayList list of eventDef's to be handledeventObject - Event ObjectqualifiedProducerName - String has the qualified name of the Producerpublic void dispatchEventForWildCards(java.util.ArrayList eventsDefsToHandle,
                             Event eventObject)
dispatchEventForWildCards in interface EventDispatcherdispatchEventForWildCards in class AbstractEventDispatcherprotected void dispatchEventToChildForWildCards(DCBindingContainer regBnd, java.util.ArrayList eventsDefsToHandle, Event eventObject)
protected void dispatchEventForSubscription(ProducerDef prodDef, EventDefinition eventDef, Event eventObject)
prodDef - ProducerDef producer of the eventeventDef - EventDefinition event which is beging producedeventObject - Event Objectprotected void dispatchEventToConsumer(ConsumerDef consumerDef, Event eventObject)
consumerDef - ConsumerDef of this eventeventObject - Event Objectprotected void invokeEvent(EventConsumer consumer, Event eventObject, java.util.HashMap consumerParamMap)
consumerParamMap - HashMap parameters of ConsumerDefprotected ProducerDef findMatchingSubscription(EventMapDef eMap, java.lang.String eventName, java.lang.String producerRefName)
public BindingContext retrieveBindingContext(DCBindingContainer container)
public void registerEventConsumer(EventConsumer consumer)
EventDispatcherconsumer - EventConsumerpublic void unRegisterEventConsumer(EventConsumer consumer)
EventDispatcherconsumer - EventConsumerpublic EventConsumer getRegisteredEventConsumer(java.lang.String consumerName)
EventDispatcherconsumerName - Stringpublic void queueEvent(EventProducer producer, java.lang.Object payLoad)
queueEvent in interface EventDispatcherqueueEvent in class AbstractEventDispatcherproducer - EventProducerpayLoad - Object Payloadpublic void processContextualEvents()
processContextualEvents in interface EventDispatcherprocessContextualEvents in class AbstractEventDispatcherprotected void processContextualEventsToChildContainers(DCBindingContainer regBnd)
public java.util.List<java.lang.String> getDynamicEventSubscriptionList()
getDynamicEventSubscriptionList in interface EventDispatchergetDynamicEventSubscriptionList in class AbstractEventDispatcherpublic void addDynamicEventSubscription(java.lang.String containerName)
addDynamicEventSubscription in interface EventDispatcheraddDynamicEventSubscription in class AbstractEventDispatcherpublic boolean hasDynamicEventSubscription(java.lang.String name)
hasDynamicEventSubscription in interface EventDispatcherhasDynamicEventSubscription in class AbstractEventDispatcher