public void ReceiveMessage(IChannelMessage response) { if (response is IRequest) { _threadPool.ExecuteTask(new RequestDeliverTask(response, requestListener)); } }
public void ReceiveMessage(IChannelMessage message) { try { IRequest request = message as IRequest; if (request != null) { if (_threadPool != null) { _threadPool.ExecuteTask(new RequestDeliverTask(message, _requestListener)); } else { _requestListener.OnRequest(request); } } else { IResponse response = message as IResponse; if (_responseListener != null) { _responseListener.ReceiveMessage(message); } //if(response != null) // _threadPool.ExecuteTask(new ResponseDeliverTask(message, _responseListener)); } } catch (Exception ex) { if (LoggerManager.Instance.ServerLogger != null && LoggerManager.Instance.ServerLogger.IsErrorEnabled) { LoggerManager.Instance.ServerLogger.Error("DualChannelListener.RecieveMessage", ex.Message); } } }