/// <summary> /// Initializes a new instance of the <see cref="T:System.Object" /> class. /// </summary> /// <param name="container">The container.</param> /// <param name="engine">The chat engine.</param> /// <exception cref="System.ArgumentNullException">engine, container</exception> internal ChatHandlersProvider( [NotNull] IObjectContainer container, [NotNull] ChatEngine engine) { if (container == null) { throw new ArgumentNullException(nameof(container)); } if (engine == null) { throw new ArgumentNullException(nameof(engine)); } RootNode = new AimlExplorerNode(container, engine.RootNode); }
/// <summary> /// Rebuilds the child collection. /// </summary> private void RebuildChildren() { _children.Clear(); foreach (KeyValuePair<string, Node> pair in _node.Children) { Debug.Assert(pair.Value != null); var child = new AimlExplorerNode(_container, pair.Value); _children.Add(child); } }