public List <string> SubscribeChildListener(IChildListener listener) { _childListeners.GetOrAdd(listener.GroupPath, new List <IChildListener>()) .Add(listener); return(this.GetChildren(listener.GroupPath, true).ToList()); }
/// <summary> /// Instantiates a new ChildManager. /// </summary> /// <param name="group">Group to manage.</param> /// <param name="childCallback">Callback to register child changes.</param> public ChildManager(GroupViewModel group, IChildListener childCallback) { Group = group; ChildCallback = childCallback; if (group != null) { Group.Children.CollectionChanged += (sender, args) => ChildCallback.ChildValueChanged(); } }
public void UnsubscribeChildListener(IChildListener listener) { _childListeners.GetOrAdd(listener.GroupPath, new List <IChildListener>()) .Remove(listener); }
public FirebaseChildListener(IChildListener childListener) { this.childListener = childListener; }