int IVsSolutionEvents.OnAfterOpenSolution(object pUnkReserved, int fNewSolution) { var port = Network.freeTcpPort(); Logger.LogInfo("Package: Selected {0} as the port for Engine server.", port); TddStud10Host = new TddStud10HostProxy(port, FSharpOption <bool> .None); TddStud10Host.Start(); var cfg = EngineConfigLoader.load(new EngineConfig(), FilePath.NewFilePath(GetSolutionPath())); EngineLoader.Load( this, new EngineParams( HostVersion, cfg, FilePath.NewFilePath(GetSolutionPath()), DateTime.UtcNow )); if (!cfg.IsDisabled) { EngineLoader.EnableEngine(); } else { TelemetryClient.TrackEvent("EngineDisabledOnLoad", new Dictionary <string, string>(), new Dictionary <string, double>()); } Logger.LogInfo("Triggering SnapshotGC on solution load."); SnapshotGC.SweepAsync(FilePath.NewFilePath(Environment.ExpandEnvironmentVariables(cfg.SnapShotRoot))); return(VSConstants.S_OK); }
private void SetTddStudioDisable(bool isDisabled) { var solutionPath = FilePath.NewFilePath(_dte.Solution.FileName); var config = EngineConfigLoader.load(new EngineConfig(), solutionPath); config.IsDisabled = isDisabled; TddStud10Package.Instance.IconHost.RunState = RunState.Initial; EngineConfigLoader.setConfig(solutionPath, config); }
private void ExecuteOpenSolutionCommand() { if (SolutionPath != null) { if (EngineLoader.IsRunInProgress()) { _uiServices.ShowMessageBox("Cannot close solution as a run is in progress"); return; } EngineLoader.DisableEngine(); EngineLoader.Unload(); InitializeViewModelState(); } var slnPath = _uiServices.OpenFile("Solution Files|*.sln"); if (slnPath == null) { return; } SolutionPath = slnPath; var cfg = EngineConfigLoader.load(new EngineConfig(), FilePath.NewFilePath(slnPath)); EngineLoader.Load( null, new EngineParams( HostVersion, cfg, FilePath.NewFilePath(slnPath), DateTime.UtcNow)); EngineLoader.EnableEngine(); RaisePropertyChanged(() => EngineState); CommandManager.InvalidateRequerySuggested(); OpenFile(slnPath); }