Example #1
0
        static void Main(string[] args)
        {
            List <IMessage> messages = new List <IMessage>();

            messages.Add(new MessageA());
            messages.Add(new MessageB());
            messages.Add(null);
            messages.Add(new MessageC());
            messages.Add(new MessageD());

            messages.ForEach((m) =>
            {
                if (m is IMessage)
                {
                    m.MessageTreatment();
                }
            }
                             );

            MessageC messageC = new MessageD();

            messageC.MessageTreatment();

            Console.ReadKey();
        }
Example #2
0
 public void deleteMessage(MessageD messageDel)
 {
     try
     {
         socket.Emit("deleteMessage", (data) =>
         {
             reciveStatus?.Invoke(JsonConvert.SerializeObject(data));
         }, JsonConvert.SerializeObject(messageDel));
     }
     catch (Exception ex)
     {
         string  url = apiAddress + "/deleteMessage";
         dynamic str = WebApi.Post(url, JsonConvert.SerializeObject(messageDel));
         reciveStatus?.Invoke(convertData(str));
     }
 }
Example #3
0
        public void DeeplyNestedMessagesShouldApplyEventsProperly()
        {
            var g = new MessageG();

            g.H.Add(1);
            AssertEventsStable(g);

            var f = new MessageF();

            f.G = g;
            f.G.H.Add(2);
            AssertEventsStable(f);

            var e = new MessageE();

            e.F = f;
            e.F.G.H.Add(3);
            AssertEventsStable(e);

            var d = new MessageD();

            d.E = e;
            d.E.F.G.H.Add(4);
            AssertEventsStable(d);

            var c = new MessageC();

            c.D["foo"] = d;
            c.D["foo"].E.F.G.H.Add(5);
            AssertEventsStable(c);

            var b = new MessageB();

            b.C["bar"] = c;
            b.C["bar"].D["foo"].E.F.G.H.Add(6);
            AssertEventsStable(b);

            var a = new MessageA();

            a.B = b;
            a.B.C["bar"].D["foo"].E.F.G.H.Add(7);
            AssertEventsStable(a);
        }