public void ProcessResponse(EmployeeMasterCardThreadDataResponse threadData) { if (_requestCollection.Count <= 0) return; lock (_lockRes) { if (_requestCollection.ContainsKey(threadData.MessageID)) { EmployeeMasterCardThreadData Requestitem = _requestCollection[threadData.MessageID]; if (threadData.Ack) { CommonDataAccess.UpdateEmployeeCardPolling(Requestitem.EmployeeCardNo, Requestitem.InstallationNo); LogManager.WriteLog("ProcessResponse_EmployeeMasterCard | ACK Updated for EmployeeCard:" + Requestitem.EmployeeCardNo.ToString() + "| in Installation No " + Requestitem.InstallationNo.ToString() , LogManager.enumLogLevel.Info); } else { LogManager.WriteLog("ProcessResponse_EmployeeMasterCard | NACK received for EmployeeCard:" + Requestitem.EmployeeCardNo.ToString() + "| in Installation No " + Requestitem.InstallationNo.ToString() , LogManager.enumLogLevel.Info); } _emppollingCollection.Add(new Employeecarddata { EmployeeCard = Requestitem.EmployeeCardNo, Installation_No = Requestitem.InstallationNo, PollingStatus = threadData.Ack }); _requestCollection.Remove(threadData.MessageID); } } }