/// <summary> /// This Function Change Behaviory (Change Functionality) /// </summary> /// <param name="subject">following class</param> /// <param name="Behavior">Function used when subject notify all Observe. Implement I_Observer Interface.</param> /// <returns>newly set behavior</returns> public I_Observer_Behavior ChangeBehavior(I_Subject subject, I_Observer_Behavior Behavior) { this.subject = (Subject)subject; this.Behavior = Behavior; return this.Behavior; }
public virtual void AdviseAll(I_Observer_Behavior Behavior, object arg) { RemoveListed(); IEnumerator<I_Observer> iter = Observers.GetEnumerator(); while (iter.MoveNext()) { I_Observer observer = iter.Current; observer.ChangeBehavior(this, Behavior).update(arg); } }