Пример #1
0
        public PluginParentItem(XPathNavigator pluginRootnode)
        {
            if (pluginRootnode == null)
            {
                throw new ArgumentNullException("pluginRootnode");
            }
            this.realName     = XmlHelperClass.GetXmlStringValue(pluginRootnode, "@parent");
            this.matchingName = PluginSearch.GetFirstMatchingNamespaceName(this.realName);
            this.merge        = XmlHelperClass.GetXmlBoolValue(pluginRootnode, "@merge", true);
            string childName = XmlHelperClass.GetXmlStringValue(pluginRootnode, "@child");

            if (!string.IsNullOrEmpty(childName))
            {
                this.children.Add(new PluginChildItem(childName));
            }
            else
            {
                XPathNodeIterator pChild =
                    pluginRootnode.SelectChildren("child", ApplicationHelpers.Help2NamespaceUri);
                while (pChild.MoveNext())
                {
                    this.children.Add(new PluginChildItem(pChild.Current));
                }
            }
        }
Пример #2
0
 public PluginChildItem(string childName)
 {
     if (string.IsNullOrEmpty(childName))
     {
         throw new ArgumentNullException("childName");
     }
     this.realName     = childName;
     this.matchingName = PluginSearch.GetFirstMatchingNamespaceName(this.realName);
 }
Пример #3
0
 public PluginChildItem(XPathNavigator pluginRootnode)
 {
     if (pluginRootnode == null)
     {
         throw new ArgumentNullException("pluginRootnode");
     }
     this.realName     = XmlHelperClass.GetXmlStringValue(pluginRootnode, "@name");
     this.matchingName = PluginSearch.GetFirstMatchingNamespaceName(this.realName);
 }
        public NamespaceItemClass(XPathNavigator rootNode)
        {
            if (rootNode == null)
            {
                throw new ArgumentNullException("rootNode");
            }

            this.name        = XmlHelperClass.GetXmlStringValue(rootNode, "@name");
            this.description = XmlHelperClass.GetXmlStringValue(rootNode, "@description");
            this.collection  = XmlHelperClass.GetXmlStringValue(rootNode, "@file");
            this.update      = XmlHelperClass.GetXmlBoolValue(rootNode, "@update");
            this.merge       = XmlHelperClass.GetXmlBoolValue(rootNode, "@merge", true);
            this.noremove    = XmlHelperClass.GetXmlBoolValue(rootNode, "@noremove");
            this.connections = PluginSearch.FindPluginAsGenericList(this.name);

            this.Initialize(rootNode);
        }
Пример #5
0
 /// <summary>
 /// 添加配置查询
 /// </summary>
 /// <param name="search"></param>
 public static void RegisterConfig(PluginSearch <string> search)
 {
     searchConfig += search;
 }
Пример #6
0
 /// <summary>
 /// 插件查询
 /// </summary>
 /// <param name="pluginSearch"></param>
 public static void Register(PluginSearch <object> pluginSearch)
 {
     searchPugin += pluginSearch;
 }