Esempio n. 1
0
        //Raises the given domain event in its own thread
        public static void RaiseThreadedEvent <T>(T args)
        {
            if (Container != null)
            {
                foreach (var handler in Container.GetServices <ICommandHandler <T> >())
                {
                    ICommandHandler <T> threadHandler = handler;

                    ThreadLauncher.Launch(threadHandler.Execute, args);
                }
            }

            if (_actions != null)
            {
                foreach (var action in _actions.OfType <Action <T> >())
                {
                    var threadHandler = action;

                    ThreadLauncher.Launch(threadHandler, args);
                }
            }
        }