internal PlugInInfo(string regName, Type type, BasePlugInAttribute attr) : base(regName, attr) { FileName = PlugInFactoryInfo.GetFileName(type); TypeName = type.ToString(); PlugType = PlugInType.Code; }
internal ConfigFactoryData(BaseXmlConfigFactory factory) { FactoryInfo = new PlugInFactoryInfo(factory); List <XmlPlugInInfo> list = new List <XmlPlugInInfo>(); factory.EnumableCodePlugIn((regName, type, attr) => list.Add(new XmlPlugInInfo(regName, type, attr))); PlugIns = list; }
internal PlugInInfo(string regName, BasePlugInAttribute attr, object obj) : base(regName, attr) { Type type = obj.GetType(); FileName = PlugInFactoryInfo.GetFileName(type); TypeName = type.ToString(); PlugType = PlugInType.Instance; }
private List <PlugInFactoryInfo> CreateList(IEnumerable <BasePlugInFactory> list) { List <PlugInFactoryInfo> result = new List <PlugInFactoryInfo>(list.Count()); foreach (var item in list) { PlugInFactoryInfo info = new PlugInFactoryInfo(item); result.Add(info); } return(result); }
internal XmlPlugInInfo(string regName, Type type, BasePlugInAttribute attr) : base(regName, attr) { FileName = PlugInFactoryInfo.GetFileName(type); TypeName = type.ToString(); var objAttr = attr.Convert <BaseObjectElementAttribute>(); NamingRule = objAttr.NamingRule; NamespaceType = objAttr.NamespaceType; NamespaceUri = objAttr.NamespaceUri; UseConstructor = objAttr.UseConstructor; }
internal PlugInFactoryData(BasePlugInFactory factory) { FactoryInfo = new PlugInFactoryInfo(factory); List <PlugInInfo> list = new List <PlugInInfo>(); factory.EnumableCodePlugIn((regName, type, attr) => list.Add(new PlugInInfo(regName, type, attr))); BaseInstancePlugInFactory instanceFactory = factory as BaseInstancePlugInFactory; if (instanceFactory != null) { instanceFactory.EnumableInstancePlugIn((regName, obj, attr) => list.Add(new PlugInInfo(regName, attr, obj))); } BaseXmlPlugInFactory xmlFactory = factory as BaseXmlPlugInFactory; if (xmlFactory != null) { xmlFactory.EnumableXmlPlugIn((item, fileName, type, attr) => list.Add(new PlugInInfo(item, fileName, type, attr))); } PlugIns = list; }