internal MiddlewareCorelogicLayer() { _binProcessferProcessor = new BinTransferLayer(this); _middlewareCommunicateProcessor = new MiddlewareCommunicateLayer(this); _groupCommunicateProcessor = new GroupCommunicateLayer(this); mMiddlewareMessenger = MiddlewareMessenger.Instance; _asynSendRequestRunner = new SequentialItemProcessor <RequestCommunicatePackage>(this.__CoAsynSendRequestRunning); _asynFeedbackCommunicateReplyMessageRunner = new SequentialItemProcessor <ReplyCommunicatePackage>(this.__AsynFeedbackCommunicateReplyMessageRunning); _asynGetGroupRunner = new SequentialItemProcessor <KeyValuePair <string, GroupDevice> >(this.__AsynCoGetGroupRunning); _asynJoinGroupRunner = new SequentialItemProcessor <KeyValuePair <GroupDevice, GroupMemberRole> >(this.__CoAsynJoinGroupRunning); _asynExitGroupRunner = new SequentialItemProcessor <GroupDevice>(this.__CoAsynExitGroupRunning); _asynRadioRunner = new SequentialItemProcessor <GroupComunicatePackage>(this.__CoAsynRadioRunning); _asynCreategroupRunner = new SequentialItemProcessor <KeyValuePair <string, GroupDevice> >(this.__CoAsynCreateGroupRunning); }
public void Release() { mMessageFactory = null; this.MessageRecived = null; mCoreLogicProcessor = null; mMiddlewareCommunicateProcessor = null; mGroupCommunicateProcessor = null; mSpeakMsgID2Group.Clear(); mSpeakMsgID2Group = null; mListeningDevice2MsgID.Clear(); mListeningDevice2MsgID = null; mListeningGroup2Device.Clear(); mListeningGroup2Device = null; }
public void Initialize(MiddlewareCorelogicLayer coreLogicProcessor, GroupCommunicateLayer groupCommunicateProcessor, MiddlewareCommunicateLayer middlewareCommunicateProcessor, MessageRecivedHandler coMsgRecivedHandler) { mListeningGroup2Device = new Hashtable(); mListeningDevice2MsgID = new Hashtable(); mSpeakMsgID2Group = new Hashtable(); mCoreLogicProcessor = coreLogicProcessor; mGroupCommunicateProcessor = groupCommunicateProcessor; mMiddlewareCommunicateProcessor = middlewareCommunicateProcessor; this.MessageRecived += coMsgRecivedHandler; mMessageFactory = MessageFactory.Instance; }