// Unregisters a target from this keeper in an observer pattern private void UnregisterTarget(TargetBase target) { if (target != null) { lock (_targetLock) { try { // Try to shutdown the target target.ShutdownInternal(); } finally { // Remove it from the list if we have it registered if (_targets.ContainsKey(target.Name)) { _targets.Remove(target.Name); } } } } }
// Registers a target to this target keeper in an observer pattern private void RegisterTarget(TargetBase target) { if (target != null) { lock (_targetLock) { lock (_configLock) { _targets[target.Name] = target; } } } }