/// <summary> /// Starts this object. /// </summary> public void Start() { if (String.IsNullOrEmpty(JavaPath.Text)) { if (PopulateJavaPath() == false) { return; } } // write out the latest settings JenkinsSlaveConfiguration config = CreateJenkinsSlaveConfiguration(); OutputLog.Items.Clear(); _slaveExecutor = new SlaveExecutor(config); _slaveExecutor.OnLogMessage += LogMessage; _slaveExecutor.OnJenkinsStarted += JenkinsStarted; _slaveExecutor.Go(); }
/// <summary> /// Stops this object. /// </summary> /// <param name="userRequested">true if user requested.</param> private void Stop(bool userRequested = false) { if (_slaveExecutor != null) { if (_slaveExecutor.OnLogMessage != null) { _slaveExecutor.OnLogMessage -= LogMessage; } if (_slaveExecutor.OnJenkinsStarted != null) { _slaveExecutor.OnJenkinsStarted -= JenkinsStarted; } _slaveExecutor.Stop(); _slaveExecutor = null; } LogMessage("Stop Jenkins " + (userRequested? "" : "not ") + "requested by User"); LogMessage("*** Jenkins has stopped ***"); SetUiForRunningState(false); }