Example #1
0
        private static FrameworkConstruction RegisterModule <T>(this FrameworkConstruction construction)
            where T : IDependencyModule, new()
        {
            var module = new T();

            return(construction.RegisterModule <T>(module));
        }
Example #2
0
        private static FrameworkConstruction RegisterModule(this FrameworkConstruction construction, Type moduleType)
        {
            if (moduleType == null)
            {
                throw new Exception("Trying to register module of null type");
            }

            var module = Activator.CreateInstance(moduleType) as IDependencyModule;

            return(construction.RegisterModule(module));
        }
Example #3
0
        public static FrameworkConstruction AddModules(this FrameworkConstruction construction)
        {
            var assembly = typeof(AssemblyInfo).Assembly;

            foreach (var type in assembly.GetTypes()
                     .Where(t => t.GetInterfaces().Contains(typeof(IDependencyModule)) &&
                            t.HasParameterlessConstructor()))
            {
                construction.RegisterModule(type);
            }

            return(construction);
        }