示例#1
0
 void When(EnvelopeDispatched ed)
 {
     if (ed.Dispatcher == "router")
     {
         foreach (var item in ed.Envelope.Items)
         {
             var prefix = "";
             if (item.Content is ICommand <IIdentity> )
             {
                 prefix = ((ICommand <IIdentity>)(item.Content)).Id + " ";
             }
             else if (item.Content is IEvent <IIdentity> )
             {
                 prefix = ((IEvent <IIdentity>)(item.Content)).Id + " ";
             }
             WriteLine(prefix + Describe.Object(item.Content));
         }
     }
 }
示例#2
0
        void When(EnvelopeDispatched ed)
        {
            if (ed.Dispatcher != "watch")
            {
                return;
            }

            var content = ed.Envelope.Message;
            var eEvent  = content as IEvent <IIdentity>;

            if (eEvent != null)
            {
                WriteLine("D{" + eEvent.Id + "} " + Describe.Object(content), ConsoleColor.DarkGreen);
                return;
            }
            if (content is IFuncEvent)
            {
                WriteLine("=> " + Describe.Object(content), ConsoleColor.DarkGreen);
                return;
            }
            //var adaptCommand = content as IAdaptCommand<IIdentity>;
            //if (adaptCommand != null)
            //{
            //    WriteLine("A{" + adaptCommand.Id + "} " + Describe.Object(content), ConsoleColor.DarkCyan);
            //    return;
            //}
            if (content is IFuncCommand)
            {
                WriteLine("=> " + Describe.Object(content), ConsoleColor.DarkCyan);
                return;
            }

            if (content is ICommand)
            {
                WriteLine(Describe.Object(content), ConsoleColor.DarkCyan);
                return;
            }

            WriteLine(Describe.Object(content));
        }