Exemple #1
0
 internal PlugInInfo(string regName, Type type, BasePlugInAttribute attr)
     : base(regName, attr)
 {
     FileName = PlugInFactoryInfo.GetFileName(type);
     TypeName = type.ToString();
     PlugType = PlugInType.Code;
 }
Exemple #2
0
        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;
        }
Exemple #3
0
        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;
        }
Exemple #4
0
        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);
        }
Exemple #5
0
        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;
        }