Пример #1
0
        /// <summary>
        /// The register pages
        /// </summary>
        /// <param name="builder">
        /// The builder.
        /// </param>
        private static void RegisterPages(ContainerBuilder builder)
        {
            var assemblies = ExtensionAssemblies.Concat(new[] { Assembly.GetExecutingAssembly() }).ToArray();

            builder.RegisterAssemblyTypes(assemblies).AssignableTo <ILocatablePage>().AsImplementedInterfaces()
            .SingleInstance();
        }
Пример #2
0
        public override bool Execute()
        {
            PrepareExecute();

            ExtensibilityDriver.Instance.LoadExtensions(SharpGenLogger,
                                                        ExtensionAssemblies.Select(x => x.ItemSpec).ToArray());

            var config = new ConfigFile
            {
                Files = ConfigFiles.Select(file => file.ItemSpec).ToList(),
                Id    = "SharpGen-MSBuild"
            };

            try
            {
                config = LoadConfig(config);

                return(!SharpGenLogger.HasErrors && Execute(config));
            }
            catch (CodeGenFailedException ex)
            {
                SharpGenLogger.Fatal("Internal SharpGen exception", ex);
                return(false);
            }
        }
Пример #3
0
        /// <summary>
        /// The register modules.
        /// </summary>
        /// <param name="builder">
        /// The builder.
        /// </param>
        private static void RegisterModules(ContainerBuilder builder)
        {
            var assemblies = ExtensionAssemblies.Concat(new[] { Assembly.GetExecutingAssembly() }).ToArray();

            // forum modules...
            builder.RegisterAssemblyTypes(assemblies).AssignableTo <IBaseForumModule>().As <IBaseForumModule>()
            .InstancePerLifetimeScope();

            // editor modules...
            builder.RegisterAssemblyTypes(assemblies).AssignableTo <ForumEditor>().As <ForumEditor>()
            .InstancePerLifetimeScope();
        }