Ejemplo n.º 1
0
 public void ProcessEvent(Event Event)
 {
     if (Event.NeedsToBeProcessed(AppDomain.CurrentDomain))
     {
         Event.MarkInvokedInDomain(AppDomain.CurrentDomain);
         sEventHandler[] tmp;
         _mut.WaitOne();
         tmp = new sEventHandler[_handlers.Count];
         _handlers.CopyTo(tmp, 0);
         _mut.ReleaseMutex();
         if (Event.IsSecurred)
         {
             List <sEventHandler> handlers = new List <sEventHandler>();
             foreach (sEventHandler hndlr in tmp)
             {
                 if (Event.IsHandlerAllowed(AppDomain.CurrentDomain.FriendlyName, hndlr.Handler.GetType().FullName))
                 {
                     handlers.Add(hndlr);
                 }
             }
         }
         else
         {
             _ProcessEvent(Event, new List <sEventHandler>(tmp));
         }
     }
 }
Ejemplo n.º 2
0
        private void _ProcessEventAsync(object obj)
        {
            Event         Event   = (Event)((object[])obj)[0];
            sEventHandler handler = (sEventHandler)((object[])obj)[1];

            try
            {
                handler.Handler.ProcessEvent(Event);
            }
            catch (Exception e)
            {
            }
        }
Ejemplo n.º 3
0
 private void ProcessEvent(SocketEvent message)
 {
     sEventHandler[] handlers;
     lock (_handlers)
     {
         handlers = new sEventHandler[_handlers.Count];
         _handlers.CopyTo(handlers, 0);
     }
     foreach (sEventHandler eh in handlers)
     {
         if (eh.HandlesEvent(message))
         {
             eh.Handler.BeginInvoke(message, new AsyncCallback(ProcessingComplete), this);
         }
     }
 }
Ejemplo n.º 4
0
 public void ProcessEvent(Event Event)
 {
     if (Event.NeedsToBeProcessed(AppDomain.CurrentDomain))
     {
         Event.MarkInvokedInDomain(AppDomain.CurrentDomain);
         sEventHandler[] tmp;
         _mut.WaitOne();
         tmp = new sEventHandler[_handlers.Count];
         _handlers.CopyTo(tmp, 0);
         _mut.ReleaseMutex();
         if (Event.IsSecurred)
         {
             List<sEventHandler> handlers = new List<sEventHandler>();
             foreach (sEventHandler hndlr in tmp)
             {
                 if (Event.IsHandlerAllowed(AppDomain.CurrentDomain.FriendlyName, hndlr.Handler.GetType().FullName))
                     handlers.Add(hndlr);
             }
         }else
             _ProcessEvent(Event, new List<sEventHandler>(tmp));
     }
 }
Ejemplo n.º 5
0
 private void ProcessEvent(SocketEvent message)
 {
     sEventHandler[] handlers;
     lock (_handlers)
     {
         handlers = new sEventHandler[_handlers.Count];
         _handlers.CopyTo(handlers, 0);
     }
     foreach (sEventHandler eh in handlers)
     {
         if (eh.HandlesEvent(message))
             eh.Handler.BeginInvoke(message, new AsyncCallback(ProcessingComplete), this);
     }
 }