Exemple #1
0
 /// <summary>
 /// Post the specified Event to the Default MessageBus
 /// </summary>
 /// <param name="busEvent">Event.</param>
 public static void Post(MessageBusEvent busEvent)
 {
     if (RunPostOnSeperateTask == true)
     {
         Task.Run(() =>
         {
             PostInternal(busEvent);
         });
     }
     else
     {
         PostInternal(busEvent);
     }
 }
Exemple #2
0
        private static void PostInternal(MessageBusEvent busEvent)
        {
            if (!(busEvent is CoreMessageBusEvent))
            {
                foreach (var item in EventHandlers.HandlersForEvent(busEvent.GetType()))
                {
                    if (item.EventAction != null)
                    {
                        Execute(item.EventAction, busEvent.Sender, busEvent);
                    }
                }
            }

            //find all the registered handlers
            foreach (var item in EventHandlers.HandlersForEvent(busEvent.EventId))
            {
                if (item.EventAction != null)
                {
                    Execute(item.EventAction, busEvent.Sender, busEvent);
                }
            }
        }
Exemple #3
0
 private static void Execute(Action <object, MessageBusEvent> Action, object Sender, MessageBusEvent Evnt)
 {
     Action(Sender, Evnt);
 }