public virtual void GetChildNames(ReturnContainers returnContainers)
        {
            Contract.Requires <NotSupportedException>(IsContainer, "Only container nodes support GetChildNames.");

            foreach (NodeBase childNode in GetChildNodes())
            {
                if (returnContainers == ReturnContainers.ReturnAllContainers || string.IsNullOrEmpty(NodeContext.Filter))
                {
                    NodeContext.WriteItemObject(childNode.Name, childNode.Name, IsContainer);
                }
                else
                {
                    WildcardPattern wildcardPattern = new WildcardPattern(NodeContext.Filter);
                    if (wildcardPattern.IsMatch(childNode.Name))
                    {
                        NodeContext.WriteItemObject(childNode.Name, childNode.Name, IsContainer);
                    }
                }
            }
        }
 public void GetChildItems()
 {
     GetChildNodes().ToList().ForEach(childNode => NodeContext.WriteItemObject(new PSObject(childNode.Value), childNode.PathSegment.Path, childNode.IsContainer));
 }