protected internal InitializationEngineReplacement(ILog logger, DisabledInitializationEngine originalInitializationEngine)
        {
            this.Logger = logger ?? throw new ArgumentNullException(nameof(logger));
            this.OriginalInitializationEngine = originalInitializationEngine ?? throw new ArgumentNullException(nameof(originalInitializationEngine));

            originalInitializationEngine.InitComplete += this.OnInitializationComplete;
        }
 public InitializationEngineReplacement(DisabledInitializationEngine originalInitializationEngine) : this(_logger, originalInitializationEngine)
 {
 }
 protected internal virtual void DisableOriginalEngine(DisabledInitializationEngine disabledInitializationEngine)
 {
     // ReSharper disable PossibleNullReferenceException
     typeof(InitializationModule).GetField("_engine", BindingFlags.NonPublic | BindingFlags.Static).SetValue(null, disabledInitializationEngine);
     // ReSharper restore PossibleNullReferenceException
 }