Example #1
0
        protected override void ConfigureContainer( IContainer container )
        {
            this.CoreConfig = container.Resolve<INGinConfig>();

            // create temporary builder for log manager
            ContainerBuilder builder = new ContainerBuilder();

            // register and build log manager first
            this.ConfigureLogManager( builder );
            builder.Build( container );
            ILogManager logManager = container.Resolve<ILogManager>();

            // log message
            logManager.Trace( Namespace.LoggerName, LogLevel.Information, "Configuring module: {0}...", typeof( CoreModule ).FullName );

            // create new builder for other core components
            builder = new ContainerBuilder();

            // configure core services
            this.ConfigureConfigManager( builder, logManager );
            this.ConfigureDependencyResolver( builder, logManager );
            this.ConfigurePluginManager( builder, logManager );

            // build to container
            builder.Build( container );

            this.ConfigureCustomConfigDataTypes( container, logManager );

            base.ConfigureContainer( container );
        }
Example #2
0
        public ConfigManager(INGinConfig coreConfig, ILogManager logManager )
        {
            // check for null
            if ( coreConfig == null )
            {
                throw new ArgumentNullException( "The given configuration object must not be null.", "coreConfig" );
            }

            if ( logManager == null )
            {
                throw new ArgumentNullException( "The given log manager must not be null.", "logManager" );
            }

            this.LogManager = logManager;
            this.Configuration = coreConfig;
        }
Example #3
0
 public ModuleLoader( INGinConfig coreConfig )
 {
     this.CoreConfig = coreConfig;
 }