public void Run() { AddColumn("Name"); AddColumn("ClassName"); AddColumn("Assembly"); AddColumn("FileName"); foreach (Type type in Data.DBProvider.GetAnalyzers()) { NewRow(); Data.INamedExternalReference nameRef = Hubble.Framework.Reflection.Instance.CreateInstance(type) as Data.INamedExternalReference; OutputValue("Name", nameRef.Name); OutputValue("ClassName", type.FullName); OutputValue("Assembly", type.Assembly.FullName); OutputValue("FileName", type.Assembly.Location); } }
public void Run() { AddColumn("Name"); AddColumn("ClassName"); AddColumn("Assembly"); AddColumn("FileName"); Global.IDBAdapterConfig[] adapters = Global.Setting.Config.IDBAdapters.ToArray(); foreach (Type type in Data.DBProvider.GetDBAdapters()) { NewRow(); Data.INamedExternalReference nameRef = Hubble.Framework.Reflection.Instance.CreateInstance(type) as Data.INamedExternalReference; OutputValue("Name", nameRef.Name); OutputValue("ClassName", type.FullName); OutputValue("Assembly", type.Assembly.FullName); OutputValue("FileName", type.Assembly.Location); } }
internal void Load(Dictionary <string, Type> dictionary) { Assembly asm = Assembly.LoadFrom(AssemblyFile); foreach (Type type in asm.GetTypes()) { if (type.GetInterface(Interface.FullName) != null) { Data.INamedExternalReference refer = asm.CreateInstance(type.FullName) as Data.INamedExternalReference; if (refer == null) { Report.WriteErrorLog(string.Format("External reference {0} does not inherit from INamedExternalReference", type.FullName)); } else { string key = refer.Name.ToLower().Trim(); if (!dictionary.ContainsKey(key)) { if (refer is Analysis.IAnalyzer) { Analysis.IAnalyzer analyzer = refer as Analysis.IAnalyzer; analyzer.Init(); } dictionary.Add(key, type); } else { Global.Report.WriteErrorLog(string.Format("Reduplicate name = {0} in External reference {1}!", refer.Name, type.FullName)); } } } } }