public void AddChild(TObject parent, TObject child) { if (parent == null) { throw new ArgumentNullException(nameof(parent)); } if (child == null) { throw new ArgumentNullException(nameof(child)); } if (!TryGet(parent, out ObjectRelativeCollection <TObject> collection)) { collection = new ObjectRelativeCollection <TObject>(); Add(parent, collection); } collection.Add(child); }
protected override bool OnRemove(TObject id, ObjectRelativeCollection <TObject> entry) { m_entries.Remove(id); return(base.OnRemove(id, entry)); }
protected override void OnAdd(TObject id, ObjectRelativeCollection <TObject> entry) { base.OnAdd(id, entry); m_entries.Add(id, entry); }