public FFMsgHandler(_FFMsgHandlerFactory msgHandlerFactory, FFTgtHandlerDeviceTypes deviceType, IFFMsgTransmitter msgTransmitter) { _msgHandlerFactory = msgHandlerFactory; _deviceType = deviceType; _msgTransmitter = msgTransmitter; _requestResponseMappings = new RequestResponseMapItems(); _targetHandlers = new StringDictionary <_HandlerInfo>(); this.CreateTargetHandlers(); }
public FFMsgHandler(_FFMsgHandlerFactory msgHandlerFactory, FFTgtHandlerDeviceTypes deviceType, IFFMsgTransmitter msgTransmitter) { _msgHandlerFactory = msgHandlerFactory; _deviceType = deviceType; _msgTransmitter = msgTransmitter; _requestResponseMappings = new RequestResponseMapItems(); _targetHandlers = new StringDictionary<_HandlerInfo>(); this.CreateTargetHandlers(); }
public bool Execute(IFreeformEntity_Msg request) { using (ILogMethod method = Log.LogMethod(DYN_MODULE_NAME, "ProcessMessage")) { bool result = default(bool); try { if (request == null || request.IpAddress.IsEmpty()) { return(false); } string key = request.IpAddress; _FFMsgHandlerFactory factory = GetFactory(request); // immediate execution or delayed execution if (factory.IsExecuting) { _executorDelayLoading.QueueWorkerItem(request); result = true; } else { result = factory.Execute(request); } } catch (Exception ex) { method.Exception(ex); } return(result); } }