/// <summary> /// Add user-defined command help data to command help. /// </summary> /// <param name="userDefinedData">User defined data object.</param> internal void AddUserDefinedData(UserDefinedHelpData userDefinedData) { if (userDefinedData == null) { return; } string propertyValue; if (userDefinedData.Properties.TryGetValue("component", out propertyValue)) { _component = propertyValue; } if (userDefinedData.Properties.TryGetValue("role", out propertyValue)) { _role = propertyValue; } if (userDefinedData.Properties.TryGetValue("functionality", out propertyValue)) { _functionality = propertyValue; } // component,role,functionality is part of common help.. // Update these properties as we have new data now.. this.UpdateUserDefinedDataProperties(); }
internal static UserDefinedHelpData Load(System.Xml.XmlNode dataNode) { if (dataNode == null) { return null; } UserDefinedHelpData data = new UserDefinedHelpData(); for (int i = 0; i < dataNode.ChildNodes.Count; i++) { System.Xml.XmlNode node = dataNode.ChildNodes[i]; if (node.NodeType == XmlNodeType.Element) { data.Properties[node.Name] = node.InnerText.Trim(); } } if (!data.Properties.ContainsKey("name")) { return null; } data._name = data.Properties["name"]; if (string.IsNullOrEmpty(data.Name)) { return null; } return data; }
internal static UserDefinedHelpData Load(System.Xml.XmlNode dataNode) { if (dataNode == null) { return(null); } UserDefinedHelpData data = new UserDefinedHelpData(); for (int i = 0; i < dataNode.ChildNodes.Count; i++) { System.Xml.XmlNode node = dataNode.ChildNodes[i]; if (node.NodeType == XmlNodeType.Element) { data.Properties[node.Name] = node.InnerText.Trim(); } } if (!data.Properties.ContainsKey("name")) { return(null); } data._name = data.Properties["name"]; if (string.IsNullOrEmpty(data.Name)) { return(null); } return(data); }
private void LoadHelpFile(string helpFile, string helpFileIdentifier) { XmlDocument document = InternalDeserializer.LoadUnsafeXmlDocument(new FileInfo(helpFile), false, null); this._helpFiles[helpFile] = 0; System.Xml.XmlNode helpItemsNode = null; if (document.HasChildNodes) { for (int i = 0; i < document.ChildNodes.Count; i++) { System.Xml.XmlNode node2 = document.ChildNodes[i]; if ((node2.NodeType == XmlNodeType.Element) && (string.Compare(node2.LocalName, "helpItems", StringComparison.OrdinalIgnoreCase) == 0)) { helpItemsNode = node2; break; } } } if (helpItemsNode == null) { tracer.WriteLine("Unable to find 'helpItems' element in file {0}", new object[] { helpFile }); } else { bool flag = IsMamlHelp(helpFile, helpItemsNode); using (base.HelpSystem.Trace(helpFile)) { if (helpItemsNode.HasChildNodes) { for (int j = 0; j < helpItemsNode.ChildNodes.Count; j++) { System.Xml.XmlNode xmlNode = helpItemsNode.ChildNodes[j]; if ((xmlNode.NodeType == XmlNodeType.Element) && (string.Compare(xmlNode.LocalName, "command", StringComparison.OrdinalIgnoreCase) == 0)) { MamlCommandHelpInfo helpInfo = null; if (flag) { helpInfo = MamlCommandHelpInfo.Load(xmlNode, System.Management.Automation.HelpCategory.Cmdlet); } if (helpInfo != null) { base.HelpSystem.TraceErrors(helpInfo.Errors); this.AddToCommandCache(helpFileIdentifier, helpInfo.Name, helpInfo); } } if ((xmlNode.NodeType == XmlNodeType.Element) && (string.Compare(xmlNode.Name, "UserDefinedData", StringComparison.OrdinalIgnoreCase) == 0)) { UserDefinedHelpData userDefinedHelpData = UserDefinedHelpData.Load(xmlNode); this.ProcessUserDefineddHelpData(helpFileIdentifier, userDefinedHelpData); } } } } } }
private void ProcessUserDefineddHelpData(string mshSnapInId, UserDefinedHelpData userDefinedHelpData) { if ((userDefinedHelpData != null) && !string.IsNullOrEmpty(userDefinedHelpData.Name)) { HelpInfo info = this.GetFromCommandCache(mshSnapInId, userDefinedHelpData.Name, System.Management.Automation.HelpCategory.Cmdlet); if (info != null) { MamlCommandHelpInfo info2 = info as MamlCommandHelpInfo; if (info2 != null) { info2.AddUserDefinedData(userDefinedHelpData); } } } }
internal void AddUserDefinedData(UserDefinedHelpData userDefinedData) { if (userDefinedData != null) { if (userDefinedData.Properties.ContainsKey("component")) { this._component = userDefinedData.Properties["component"]; } if (userDefinedData.Properties.ContainsKey("role")) { this._role = userDefinedData.Properties["role"]; } if (userDefinedData.Properties.ContainsKey("functionality")) { this._functionality = userDefinedData.Properties["functionality"]; } base.UpdateUserDefinedDataProperties(); } }
internal static UserDefinedHelpData Load(XmlNode dataNode) { if (dataNode == null) { return((UserDefinedHelpData)null); } UserDefinedHelpData userDefinedHelpData = new UserDefinedHelpData(); for (int i = 0; i < dataNode.ChildNodes.Count; ++i) { XmlNode childNode = dataNode.ChildNodes[i]; if (childNode.NodeType == XmlNodeType.Element) { userDefinedHelpData.Properties[childNode.Name] = childNode.InnerText.Trim(); } } if (!userDefinedHelpData.Properties.ContainsKey("name")) { return((UserDefinedHelpData)null); } userDefinedHelpData._name = userDefinedHelpData.Properties["name"]; return(string.IsNullOrEmpty(userDefinedHelpData.Name) ? (UserDefinedHelpData)null : userDefinedHelpData); }
/// <summary> /// Process user defined help data by finding the corresponding helpInfo and inserting /// necessary helpdata info to command help. /// </summary> /// <param name="mshSnapInId">PSSnapIn Name for the current help file.</param> /// <param name="userDefinedHelpData"></param> private void ProcessUserDefineddHelpData(string mshSnapInId, UserDefinedHelpData userDefinedHelpData) { if (userDefinedHelpData == null) return; if (String.IsNullOrEmpty(userDefinedHelpData.Name)) return; HelpInfo helpInfo = GetFromCommandCache(mshSnapInId, userDefinedHelpData.Name, HelpCategory.Cmdlet); if (helpInfo == null) return; MamlCommandHelpInfo commandHelpInfo = helpInfo as MamlCommandHelpInfo; if (commandHelpInfo == null) return; commandHelpInfo.AddUserDefinedData(userDefinedHelpData); return; }
internal static UserDefinedHelpData Load(XmlNode dataNode) { if (dataNode == null) return null; UserDefinedHelpData userDefinedHelpData = new UserDefinedHelpData(); for (int i = 0; i < dataNode.ChildNodes.Count; i++) { XmlNode node = dataNode.ChildNodes[i]; if (node.NodeType == XmlNodeType.Element) { userDefinedHelpData.Properties[node.Name] = node.InnerText.Trim(); } } string name; if (!userDefinedHelpData.Properties.TryGetValue("name", out name)) { return null; } userDefinedHelpData._name = name; if (String.IsNullOrEmpty(userDefinedHelpData.Name)) return null; return userDefinedHelpData; }
/// <summary> /// Add user-defined command help data to command help. /// </summary> /// <param name="userDefinedData">User defined data object</param> internal void AddUserDefinedData(UserDefinedHelpData userDefinedData) { if (userDefinedData == null) return; string propertyValue; if (userDefinedData.Properties.TryGetValue("component", out propertyValue)) { _component = propertyValue; } if (userDefinedData.Properties.TryGetValue("role", out propertyValue)) { _role = propertyValue; } if (userDefinedData.Properties.TryGetValue("functionality", out propertyValue)) { _functionality = propertyValue; } // component,role,functionality is part of common help.. // Update these properties as we have new data now.. this.UpdateUserDefinedDataProperties(); }