public void MsgDispatcherLogical_Multi_Handlers_Broadcast() { Target3 target1 = new Target3(); Target3 target2 = new Target3(); MsgDispatcher dispatcher = new MsgDispatcher(); _DispatchMsg1 msg; dispatcher.AddTarget(target1); dispatcher.AddTarget(target2); msg = new _DispatchMsg1("logical://Dispatch1"); msg._Flags |= MsgFlag.Broadcast; dispatcher.Dispatch(msg); Thread.Sleep(DispatchWait); Assert.IsTrue(target1.dispatch1 && target2.dispatch1); }
private void OnExplicit1(Msg _msg) { _DispatchMsg1 msg = (_DispatchMsg1)_msg; onExplicit1 = true; }
public void OnMsg(_DispatchMsg1 msg) { dispatchMsg1 = true; }
public int OnMsg(_DispatchMsg1 msg) { return(0); }
void OnMsg(_DispatchMsg1 msg) { }
public void OnMsg2(_DispatchMsg1 msg) { }
public void OnMsgDynamic(_DispatchMsg1 msg) { dispatchDynamic = true; }
public void MsgDispatcherLogical_Broadcast() { MsgDispatcher dispatcher = new MsgDispatcher(); Msg msg; dispatcher.AddTarget(this); Clear(); msg = new _DispatchMsg1("logical://Foo/Bar/1"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(1, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler1")); Clear(); msg = new _DispatchMsg1("logical://Foo/Bar/2"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(1, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler5")); Clear(); msg = new _DispatchMsg1("logical://Foo/Bar/*"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(2, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler1") && dispatchInfo.ContainsKey("OnHandler5")); //------------------------- Clear(); msg = new _DispatchMsg2("logical://Foo/Bar/1"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(1, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler2")); Clear(); msg = new _DispatchMsg2("logical://Foo/Bar/2"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(1, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler6")); Clear(); msg = new _DispatchMsg2("logical://Foo/Bar/*"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(2, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler2") && dispatchInfo.ContainsKey("OnHandler6")); //------------------------- Clear(); msg = new _DispatchMsg3("logical://Foo/Bar/1"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(1, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler3")); Clear(); msg = new _DispatchMsg3("logical://Foo/Bar/2"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(1, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler7")); Clear(); msg = new _DispatchMsg3("logical://Foo/Bar/*"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(2, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler3") && dispatchInfo.ContainsKey("OnHandler7")); //------------------------- Clear(); msg = new _DispatchMsg4("logical://Foo/Bar/1"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(1, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler4")); Clear(); msg = new _DispatchMsg4("logical://Foo/Bar/2"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(1, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler8")); Clear(); msg = new _DispatchMsg4("logical://Foo/Bar/*"); msg._Flags |= MsgFlag.Broadcast; Assert.IsTrue(Dispatch(dispatcher, msg)); Assert.AreEqual(2, dispatchInfo.Count); Assert.IsTrue(dispatchInfo.ContainsKey("OnHandler4") && dispatchInfo.ContainsKey("OnHandler8")); }
public void OnHandler9(_DispatchMsg1 msg) { dispatchInfo.Add("OnHandler9", msg); }
public void OnMsg(_DispatchMsg1 msg) { this.Count++; }