Пример #1
0
        /// <summary>
        /// Occurs when the message dispatcher failed to dispatch a message.
        /// </summary>
        /// <param name="e">The event data.</param>
        protected virtual void OnDispatchFailed(MessageDispatchEventArgs e)
        {
            var temp = this.DispatchFailed;

            if (temp != null)
            {
                temp(this, e);
            }
        }
Пример #2
0
        private void HandlerMessage <T>(object messageHandlerInstanceOrType, T message)
        {
            var dynMessageHandler = GetHandler <T>(messageHandlerInstanceOrType);
            var evtArgs           = new MessageDispatchEventArgs(message, messageHandlerInstanceOrType.GetType(), messageHandlerInstanceOrType);

            this.OnDispatching(evtArgs);
            try
            {
                dynMessageHandler.Handle(message);
                this.OnDispatched(evtArgs);
            }
            catch
            {
                this.OnDispatchFailed(evtArgs);
            }
        }