/// <summary>
        /// Finds all types in the application context which are known components
        /// </summary>
        /// <param name="assemblyFilters">Regexes which allow an assembly if matched.</param>
        /// <returns></returns>
        private IEnumerable <Type> ScanComponents(params string[] assemblyFilters)
        {
            var componentScanner = ComponentUtil.BuildComponentScanner();

            Log.Info("Scanning for [Component] / [Service] / etc. classes...");
            return(componentScanner.ScanByAttribute(assemblyFilters).ToList());
        }
示例#2
0
        public void TestAutoConfiguration()
        {
            var componentScanner = ComponentUtil.BuildComponentScanner();
            var components       = componentScanner.ScanByAttribute("Archimedes.*").ToList();

            var conf = new ComponentRegisterer(new ElderModuleConfiguration());

            conf.RegisterComponents(components);
        }
示例#3
0
        public void TestComponentScan()
        {
            var componentScanner = ComponentUtil.BuildComponentScanner();
            var components       = componentScanner.ScanByAttribute("Archimedes.*").ToList();

            Assert.True(components.Contains(typeof(ServiceA)), "");
            Assert.True(components.Contains(typeof(ServiceB)), "");
            Assert.True(components.Contains(typeof(ServiceC)), "");
            Assert.True(components.Contains(typeof(ServiceD)), "");
        }
        public static IModuleConfiguration BuildAutoConfiguration(params string[] regexFilters)
        {
            var configuration = new ElderModuleConfiguration();
            var registerer    = new ComponentRegisterer(configuration);

            var componentScanner = ComponentUtil.BuildComponentScanner();
            var components       = componentScanner.ScanByAttribute(regexFilters).ToList();

            registerer.RegisterComponents(components);

            return(configuration);
        }