private void Removed(CpDeviceList aList, CpDevice aDevice) { UserLog.WriteLine(DateTime.Now + ": CpDeviceDiagnosticsList: Device- Udn{" + aDevice.Udn() + "}"); CpDeviceDiagnostics device = null; lock (iLock) { if (iDisposed) { return; } foreach (CpDeviceDiagnostics d in iDeviceListPending) { if (d.Udn == aDevice.Udn()) { iDeviceListPending.Remove(d); d.Dispose(); return; } } foreach (CpDeviceDiagnostics d in iDeviceListDiagnostics) { if (d.Udn == aDevice.Udn()) { device = d; iDeviceListDiagnostics.Remove(device); break; } } } if (device != null) { if (iRemoved != null) { iRemoved(this, device); } device.Dispose(); } }
private void DiagnosticsAdded(CpDeviceDiagnostics aDevice) { UserLog.WriteLine(DateTime.Now + ": CpDeviceDiagnosticsList: DeviceDiagnostics+ Udn{" + aDevice.Udn + "}"); lock (iLock) { if (iDisposed) { aDevice.Dispose(); return; } iDeviceListPending.Remove(aDevice); iDeviceListDiagnostics.Add(aDevice); } if (iAdded != null) { iAdded(this, aDevice); } }