예제 #1
0
        public void TypeDetermination()
        {
            IMsgInterface msg = new MyMessage1();

            bus.RegisterSubscriber(new Msg1Sub());

            // Handler wants MyMessage1 types, msg is IMsgInterface but runtime type MyMessage1, so it should still get called
            bus.Send(msg);
            AssertHandleCounts(m1: 1);

            ResetHandleCounts();

            BaseMessge msg2 = new MyMessage2();

            bus.RegisterSubscriber(new Msg2Sub());

            // Similar here, Msg2Sub should still get called.
            bus.Send(msg2);
            AssertHandleCounts(m1: 0, m2: 1);
        }
예제 #2
0
 void ISubscriber <MyMessage2> .Handle(MyMessage2 message)
 {
     Handle2Count++;
 }
예제 #3
0
 public void HandleMessage(MyMessage2 message)
 {
     MyMessage2 = message;
 }
예제 #4
0
 public void Handle(MyMessage2 message)
 {
 }