void _proxy_RunFinished(object sender, EventArgs e) { _realtimeChangeTracker.Consume(); if (_resumeMinimizerOnNextRunCompleted) { resumeMinimizer(); } if (_disableOnDemandRunnerOnNextRunCompleted) { disableOnDemandRunner(); } if (_setRecursiveRunDetectorStarted) { Logger.WriteDebug("Recursive run detection completed"); _setRecursiveRunDetectorStarted = false; var files = ((RecursiveRunCauseConsumer)BootStrapper.Services.Locate <IConsumerOf <FileChangeMessage> >("RecursiveRunConsumer")).Files; Logger.WriteDebug("Recursive run detection found changes in " + files.Length.ToString() + " files"); _server.Send(new RecursiveRunResultMessage(files)); if (_currentBuildProvider == null) { Stop(); Start(); } else { BootStrapper.Services.Locate <IMessageBus>().SetBuildProvider(_currentBuildProvider); } _currentBuildProvider = null; } }