public static void UnSubscribe(IOperationObserver observer, BaseOperation operation) { if (AllObservers.Keys.Contains(operation.Name)) { AllObservers[operation.Name].Remove(observer); } }
// implementing subject interface public static void Subscribe(IOperationObserver observer, BaseOperation operation) { if (!AllObservers.Keys.Contains(operation.Name)) { AllObservers.Add(operation.Name, new List <IOperationObserver>()); } if (!AllObservers[operation.Name].Contains(observer)) { AllObservers[operation.Name].Add(observer); } }