public void SetExtensionSettings() { CCTrayProject newValue = new CCTrayProject(); newValue.ExtensionSettings = "Some settings"; Assert.AreEqual("Some settings", newValue.ExtensionSettings); }
// CCNET-1179: Include the configuration in the arguments. public ProjectMonitor(CCTrayProject configuration, ICruiseProjectManager cruiseProjectManager, ISingleServerMonitor serverMonitor, DateTimeProvider dateTimeProvider) { buildDurationTracker = new BuildDurationTracker(dateTimeProvider); this.cruiseProjectManager = cruiseProjectManager; this.serverMonitor = serverMonitor; this._configuration = configuration; }
public ICruiseProjectManager Create(CCTrayProject project, IDictionary <BuildServer, ICruiseServerManager> serverManagers) { BuildServer server = project.BuildServer; switch (server.Transport) { case BuildServerTransport.Remoting: { var client = GenerateRemotingClient(server); return(new RemotingCruiseProjectManager(client, project.ProjectName)); } case BuildServerTransport.Extension: ITransportExtension extensionInstance = ExtensionHelpers.RetrieveExtension(server.ExtensionName); extensionInstance.Settings = server.ExtensionSettings; extensionInstance.Configuration = server; return(extensionInstance.RetrieveProjectManager(project.ProjectName)); default: { var client = GenerateHttpClient(server); return(new HttpCruiseProjectManager(client, project.ProjectName, serverManagers[server])); } } }
public ProjectConfigurationListViewItemAdaptor(CCTrayProject project) { this.project = project; item = new ListViewItem(new string[] { project.BuildServer.DisplayName, project.BuildServer.Transport.ToString(), project.ProjectName }); item.Checked = project.ShowProject; item.Tag = this; }
public void SetExtensionNameBlank() { CCTrayProject newValue = new CCTrayProject(); newValue.ExtensionName = string.Empty; Assert.AreEqual(string.Empty, newValue.ExtensionName); Assert.AreEqual(BuildServerTransport.HTTP, newValue.BuildServer.Transport); }
public void SetExtensionNameNonBlank() { CCTrayProject newValue = new CCTrayProject(); newValue.ExtensionName = "An extension"; Assert.AreEqual("An extension", newValue.ExtensionName); Assert.AreEqual(BuildServerTransport.Extension, newValue.BuildServer.Transport); }
/// <summary> /// Update the projects configuration. /// </summary> public void UpdateProjectList() { mainForm.ReloadConfiguration(() => { var form = new DisplayChangedProjects(changeList); form.UpdateConfiguration += (servers) => { // Update each server var projects = new List <CCTrayProject>(configuration.Projects); foreach (var server in servers) { // Generate each project and add it to the configuration foreach (var newProject in server.AddedProjects) { var projectConfig = new CCTrayProject { BuildServer = server.Configuration, ProjectName = newProject, ShowProject = true }; projects.Add(projectConfig); } // Remove the old projects foreach (var oldProject in server.DeletedProjects) { // Try to find the project CCTrayProject actualProject = null; foreach (var project in projects) { if (project.BuildServer.Equals(server.Configuration) && project.ProjectName.Equals(oldProject)) { actualProject = project; break; } } // If the project is found, it can be removed if (actualProject != null) { projects.Remove(actualProject); } } } var newConfig = configuration.Clone(); newConfig.Projects = projects.ToArray(); // Save the configuration and reload newConfig.Persist(); mainForm.CloseUpdatePanel(); }; var result = form.ShowDialog(mainForm); return(result == DialogResult.OK); }); }
private bool IsProjectAlreadyAdded(CCTrayProject project) { foreach (CCTrayProject currentProject in currentProjectList) { if (project.ServerUrl == currentProject.ServerUrl && project.ProjectName == currentProject.ProjectName) { return(true); } } return(false); }
private CCTrayProject[] BuildProjectListFromListView() { CCTrayProject[] newProjectList = new CCTrayProject[lvProjects.Items.Count]; for (int i = 0; i < lvProjects.Items.Count; i++) { ProjectConfigurationListViewItemAdaptor adaptor = (ProjectConfigurationListViewItemAdaptor)lvProjects.Items[i].Tag; newProjectList[i] = adaptor.Project; } return(newProjectList); }
/// <summary> /// Gets the list of projects. /// </summary> /// <returns>The available projects on the server.</returns> public CCTrayProject[] GetProjectList() { ProjectStatus[] statuses = manager.GetProjectStatus(); CCTrayProject[] projects = new CCTrayProject[statuses.Length]; for (int i = 0; i < statuses.Length; i++) { ProjectStatus status = statuses[i]; projects[i] = new CCTrayProject(this.configuration, status.Name); } return(projects); }
// CCNET-1179: Include the configuration in the arguments. public ProjectMonitor(CCTrayProject configuration, ICruiseProjectManager cruiseProjectManager, ISingleServerMonitor serverMonitor) : this(configuration, cruiseProjectManager, serverMonitor, new DateTimeProvider()) { }