/// <summary> /// Detach objects that observer this IPolicy /// </summary> /// <param name = "obj">IPolicyObserver</param> public void Detach(IPolicyObserver obj) { try { this._observers.Remove(obj); } catch (Exception error) { Framework.EventBus.Publish(error); } }
/// <summary> /// Attach objects that observer this IPolicy /// </summary> /// <param name = "obj">IPolicyObserver</param> public void Attach(IPolicyObserver obj) { try { if (!this._observers.Contains(obj)) { this._observers.Add(obj); } } catch (Exception error) { Framework.EventBus.Publish(error); } }
/// <summary> /// Dispose this object and all the observers /// </summary> /// <param name = "obj">IPolicyObserver</param> public void Dispose(IPolicyObserver obj) { try { for (var h = 0; h < this._observers.Count; h++) { this._observers[h].Dispose(this); } } catch (Exception error) { Framework.EventBus.Publish(error); } }
/// <summary> /// Update this observer with a refernece to the ou /// </summary> /// <param name = "policy">IPolicy</param> /// <param name = "source">source observer</param> public void Update(IPolicy policy, IPolicyObserver source) { throw new NotImplementedException(); }