/// <summary> /// Unsubscribes the given object from changes in the active snapshot. /// </summary> /// <param name="snapshotObserver">The object to observe active snapshot changes.</param> public void Unsubscribe(IScanResultsObserver snapshotObserver) { lock (this.ObserverLock) { if (this.ScanResultsObservers.Contains(snapshotObserver)) { this.ScanResultsObservers.Remove(snapshotObserver); } } }
/// <summary> /// Subscribes the given object to changes in the active snapshot. /// </summary> /// <param name="snapshotObserver">The object to observe active snapshot changes.</param> public void Subscribe(IScanResultsObserver snapshotObserver) { lock (this.ObserverLock) { if (!this.ScanResultsObservers.Contains(snapshotObserver)) { this.ScanResultsObservers.Add(snapshotObserver); snapshotObserver.Update(this.ActiveType); } } }