Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        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);
            }
        }
Exemplo n.º 3
0
        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));
                        }
                    }
                }
            }
        }