Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 148100 Details for
Bug 290490
[editor] refresh attributes in Task Editor should only update the configuration for the selected task
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
Fix
clipboard.txt (text/plain), 26.08 KB, created by
Pawel Niewiadomski
on 2009-09-25 08:36:10 EDT
(
hide
)
Description:
Fix
Filename:
MIME Type:
Creator:
Pawel Niewiadomski
Created:
2009-09-25 08:36:10 EDT
Size:
26.08 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.mylyn.jira.core >Index: src/org/eclipse/mylyn/internal/jira/core/service/JiraClientCache.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.jira.core/src/org/eclipse/mylyn/internal/jira/core/service/JiraClientCache.java,v >retrieving revision 1.14 >diff -u -r1.14 JiraClientCache.java >--- src/org/eclipse/mylyn/internal/jira/core/service/JiraClientCache.java 24 Jul 2009 12:04:22 -0000 1.14 >+++ src/org/eclipse/mylyn/internal/jira/core/service/JiraClientCache.java 25 Sep 2009 12:36:20 -0000 >@@ -27,6 +27,7 @@ > import org.eclipse.mylyn.internal.jira.core.model.SecurityLevel; > import org.eclipse.mylyn.internal.jira.core.model.ServerInfo; > import org.eclipse.mylyn.internal.jira.core.model.User; >+import org.eclipse.osgi.util.NLS; > > /** > * @author Steffen Pingel >@@ -64,20 +65,41 @@ > } > > private void initializeProjects(JiraClientData data, IProgressMonitor monitor) throws JiraException { >- String version = data.serverInfo.getVersion(); >+ monitor = Policy.monitorFor(monitor); > > data.projects = jiraClient.getProjects(monitor); > >- data.projectsById = new HashMap<String, Project>(data.projects.length); >- data.projectsByKey = new HashMap<String, Project>(data.projects.length); >+ try { >+ monitor.beginTask(Messages.JiraClientCache_getting_project_details, data.projects.length); >+ >+ data.projectsById = new HashMap<String, Project>(data.projects.length); >+ data.projectsByKey = new HashMap<String, Project>(data.projects.length); >+ >+ for (Project project : data.projects) { >+ initializeProject(project, monitor); >+ >+ data.projectsById.put(project.getId(), project); >+ data.projectsByKey.put(project.getKey(), project); >+ Policy.advance(monitor, 1); >+ } >+ } finally { >+ monitor.done(); >+ } >+ } >+ >+ private void initializeProject(Project project, IProgressMonitor monitor) throws JiraException { >+ synchronized (project) { >+ monitor.subTask(NLS.bind(Messages.JiraClientCache_project_details_for, project.getKey())); >+ >+ final String version = data.serverInfo.getVersion(); > >- for (Project project : data.projects) { >- project.setComponents(jiraClient.getComponents(project.getKey(), monitor)); >- project.setVersions(jiraClient.getVersions(project.getKey(), monitor)); >+ project.setComponents(jiraClient.getComponents(project.getKey(), Policy.subMonitorFor(monitor, 0))); >+ project.setVersions(jiraClient.getVersions(project.getKey(), Policy.subMonitorFor(monitor, 0))); > > if (supportsPerProjectIssueTypes(version) >= 0) { >- IssueType[] issueTypes = jiraClient.getIssueTypes(project.getId(), monitor); >- IssueType[] subTaskIssueTypes = jiraClient.getSubTaskIssueTypes(project.getId(), monitor); >+ IssueType[] issueTypes = jiraClient.getIssueTypes(project.getId(), Policy.subMonitorFor(monitor, 0)); >+ IssueType[] subTaskIssueTypes = jiraClient.getSubTaskIssueTypes(project.getId(), Policy.subMonitorFor( >+ monitor, 1)); > for (IssueType issueType : subTaskIssueTypes) { > issueType.setSubTaskType(true); > } >@@ -90,7 +112,8 @@ > } > if (new JiraVersion(version).compareTo(JiraVersion.JIRA_3_13) >= 0) { > try { >- SecurityLevel[] securityLevels = jiraClient.getAvailableSecurityLevels(project.getKey(), monitor); >+ SecurityLevel[] securityLevels = jiraClient.getAvailableSecurityLevels(project.getKey(), >+ Policy.subMonitorFor(monitor, 0)); > if (securityLevels.length > 0) { > SecurityLevel[] projectSecurityLevels = new SecurityLevel[securityLevels.length + 1]; > projectSecurityLevels[0] = SecurityLevel.NONE; >@@ -102,9 +125,6 @@ > project.setSecurityLevels(null); > } > } >- >- data.projectsById.put(project.getId(), project); >- data.projectsByKey.put(project.getKey(), project); > } > } > >@@ -121,10 +141,16 @@ > } > > private void initializePriorities(JiraClientData data, IProgressMonitor monitor) throws JiraException { >- data.priorities = jiraClient.getPriorities(monitor); >- data.prioritiesById = new HashMap<String, Priority>(data.priorities.length); >- for (Priority priority : data.priorities) { >- data.prioritiesById.put(priority.getId(), priority); >+ monitor = Policy.monitorFor(monitor); >+ try { >+ monitor.beginTask(Messages.JiraClientCache_getting_priorities, 1); >+ data.priorities = jiraClient.getPriorities(monitor); >+ data.prioritiesById = new HashMap<String, Priority>(data.priorities.length); >+ for (Priority priority : data.priorities) { >+ data.prioritiesById.put(priority.getId(), priority); >+ } >+ } finally { >+ monitor.done(); > } > } > >@@ -137,62 +163,83 @@ > } > > private void initializeIssueTypes(JiraClientData data, IProgressMonitor monitor) throws JiraException { >- String version = data.serverInfo.getVersion(); >- if (supportsPerProjectIssueTypes(version) >= 0) { >- // collect issue types from all projects to avoid additional SOAP request >- Set<IssueType> issueTypes = new HashSet<IssueType>(); >- for (Project project : data.projects) { >- IssueType[] projectIssueTypes = project.getIssueTypes(); >- if (projectIssueTypes != null) { >- issueTypes.addAll(Arrays.asList(projectIssueTypes)); >+ monitor = Policy.monitorFor(monitor); >+ try { >+ monitor.beginTask(Messages.JiraClientCache_getting_issue_types, 2); >+ >+ String version = data.serverInfo.getVersion(); >+ if (supportsPerProjectIssueTypes(version) >= 0) { >+ // collect issue types from all projects to avoid additional SOAP request >+ Set<IssueType> issueTypes = new HashSet<IssueType>(); >+ for (Project project : data.projects) { >+ IssueType[] projectIssueTypes = project.getIssueTypes(); >+ if (projectIssueTypes != null) { >+ issueTypes.addAll(Arrays.asList(projectIssueTypes)); >+ } > } >- } > >- data.issueTypes = issueTypes.toArray(new IssueType[0]); >- data.issueTypesById = new HashMap<String, IssueType>(data.issueTypes.length); >- for (IssueType issueType : data.issueTypes) { >- data.issueTypesById.put(issueType.getId(), issueType); >- } >- } else { >- IssueType[] issueTypes = jiraClient.getIssueTypes(monitor); >- IssueType[] subTaskIssueTypes; >- if (new JiraVersion(version).compareTo(JiraVersion.JIRA_3_3) >= 0) { >- subTaskIssueTypes = jiraClient.getSubTaskIssueTypes(monitor); >+ data.issueTypes = issueTypes.toArray(new IssueType[0]); >+ data.issueTypesById = new HashMap<String, IssueType>(data.issueTypes.length); >+ for (IssueType issueType : data.issueTypes) { >+ data.issueTypesById.put(issueType.getId(), issueType); >+ } > } else { >- subTaskIssueTypes = new IssueType[0]; >- } >+ IssueType[] issueTypes = jiraClient.getIssueTypes(Policy.subMonitorFor(monitor, 1)); >+ IssueType[] subTaskIssueTypes; >+ if (new JiraVersion(version).compareTo(JiraVersion.JIRA_3_3) >= 0) { >+ subTaskIssueTypes = jiraClient.getSubTaskIssueTypes(Policy.subMonitorFor(monitor, 1)); >+ } else { >+ subTaskIssueTypes = new IssueType[0]; >+ } > >- data.issueTypesById = new HashMap<String, IssueType>(issueTypes.length + subTaskIssueTypes.length); >+ data.issueTypesById = new HashMap<String, IssueType>(issueTypes.length + subTaskIssueTypes.length); > >- for (IssueType issueType : issueTypes) { >- data.issueTypesById.put(issueType.getId(), issueType); >- } >+ for (IssueType issueType : issueTypes) { >+ data.issueTypesById.put(issueType.getId(), issueType); >+ } > >- for (IssueType issueType : subTaskIssueTypes) { >- issueType.setSubTaskType(true); >- data.issueTypesById.put(issueType.getId(), issueType); >- } >+ for (IssueType issueType : subTaskIssueTypes) { >+ issueType.setSubTaskType(true); >+ data.issueTypesById.put(issueType.getId(), issueType); >+ } > >- data.issueTypes = new IssueType[issueTypes.length + subTaskIssueTypes.length]; >- System.arraycopy(issueTypes, 0, data.issueTypes, 0, issueTypes.length); >- System.arraycopy(subTaskIssueTypes, 0, data.issueTypes, issueTypes.length, subTaskIssueTypes.length); >+ data.issueTypes = new IssueType[issueTypes.length + subTaskIssueTypes.length]; >+ System.arraycopy(issueTypes, 0, data.issueTypes, 0, issueTypes.length); >+ System.arraycopy(subTaskIssueTypes, 0, data.issueTypes, issueTypes.length, subTaskIssueTypes.length); >+ } >+ } finally { >+ monitor.done(); > } > } > > private void initializeStatuses(JiraClientData data, IProgressMonitor monitor) throws JiraException { >- data.statuses = jiraClient.getStatuses(monitor); >- data.statusesById = new HashMap<String, JiraStatus>(data.statuses.length); >- for (JiraStatus status : data.statuses) { >- data.statusesById.put(status.getId(), status); >+ monitor = Policy.monitorFor(monitor); >+ try { >+ monitor.beginTask(Messages.JiraClientCache_getting_statuses, 1); >+ >+ data.statuses = jiraClient.getStatuses(Policy.subMonitorFor(monitor, 1)); >+ data.statusesById = new HashMap<String, JiraStatus>(data.statuses.length); >+ for (JiraStatus status : data.statuses) { >+ data.statusesById.put(status.getId(), status); >+ } >+ } finally { >+ monitor.done(); > } > } > > private void initializeResolutions(JiraClientData data, IProgressMonitor monitor) throws JiraException { >- data.resolutions = jiraClient.getResolutions(monitor); >- data.resolutionsById = new HashMap<String, Resolution>(data.resolutions.length); >- for (Resolution resolution : data.resolutions) { >- data.resolutionsById.put(resolution.getId(), resolution); >+ monitor = Policy.monitorFor(monitor); >+ try { >+ monitor.beginTask(Messages.JiraClientCache_getting_resolutions, 1); >+ data.resolutions = jiraClient.getResolutions(monitor); >+ data.resolutionsById = new HashMap<String, Resolution>(data.resolutions.length); >+ for (Resolution resolution : data.resolutions) { >+ data.resolutionsById.put(resolution.getId(), resolution); >+ } >+ } finally { >+ monitor.done(); > } >+ > } > > public Resolution getResolutionById(String id) { >@@ -211,29 +258,75 @@ > return data; > } > >+ public synchronized void refreshProjectDetails(String projectId, IProgressMonitor monitor) throws JiraException { >+ Project project = getProjectById(projectId); >+ if (project != null) { >+ try { >+ monitor.beginTask(Messages.JiraClientCache_getting_project_details, 100); >+ initializeProject(project, monitor); >+ } finally { >+ monitor.done(); >+ } >+ } else { >+ refreshDetails(monitor); >+ } >+ } >+ > public synchronized void refreshDetails(IProgressMonitor monitor) throws JiraException { > try { > monitor = Policy.monitorFor(monitor); >+ monitor.beginTask(Messages.JiraClientCache_Updating_repository_configuration, 1500); >+ >+ final JiraClientData newData = new JiraClientData(); >+ >+ monitor.subTask(Messages.JiraClientCache_getting_server_info); >+ IProgressMonitor submonitor = Policy.subMonitorFor(monitor, 100); >+ try { >+ submonitor.beginTask(Messages.JiraClientCache_getting_server_info, 1); >+ data.serverInfo = newData.serverInfo = jiraClient.getServerInfo(submonitor); >+ } finally { >+ submonitor.done(); >+ } >+ >+ monitor.subTask(Messages.JiraClientCache_getting_project_details); >+ submonitor = Policy.subMonitorFor(monitor, 1000); >+ try { >+ initializeProjects(newData, submonitor); >+ } finally { >+ submonitor.done(); >+ } >+ >+ monitor.subTask(Messages.JiraClientCache_getting_priorities); >+ submonitor = Policy.subMonitorFor(monitor, 100); >+ try { >+ initializePriorities(newData, submonitor); >+ } finally { >+ submonitor.done(); >+ } >+ >+ monitor.subTask(Messages.JiraClientCache_getting_issue_types); >+ submonitor = Policy.subMonitorFor(monitor, 100); >+ try { >+ initializeIssueTypes(newData, submonitor); >+ } finally { >+ submonitor.done(); >+ } >+ >+ monitor.subTask(Messages.JiraClientCache_getting_resolutions); >+ submonitor = Policy.subMonitorFor(monitor, 100); >+ try { >+ initializeResolutions(newData, submonitor); >+ } finally { >+ submonitor.done(); >+ } > >- // use UNKNOWN since some of the update operations block for a long time >- // TODO use InfiniteSubProgressMonitor >- monitor.beginTask(Messages.JiraClientCache_Updating_repository_configuration, IProgressMonitor.UNKNOWN); >- >- JiraClientData newData = new JiraClientData(); >- >- data.serverInfo = newData.serverInfo = jiraClient.getServerInfo(monitor); >- >- Policy.advance(monitor, 1); >- initializeProjects(newData, monitor); >- Policy.advance(monitor, 1); >- initializePriorities(newData, monitor); >- Policy.advance(monitor, 1); >- initializeIssueTypes(newData, monitor); >- Policy.advance(monitor, 1); >- initializeResolutions(newData, monitor); >- Policy.advance(monitor, 1); >- initializeStatuses(newData, monitor); >- Policy.advance(monitor, 1); >+ monitor.subTask(Messages.JiraClientCache_getting_statuses); >+ submonitor = Policy.subMonitorFor(monitor, 100); >+ try { >+ initializeStatuses(newData, submonitor); >+ } finally { >+ submonitor.done(); >+ } > > newData.lastUpdate = System.currentTimeMillis(); > this.data = newData; >Index: src/org/eclipse/mylyn/internal/jira/core/service/messages.properties >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.jira.core/src/org/eclipse/mylyn/internal/jira/core/service/messages.properties,v >retrieving revision 1.2 >diff -u -r1.2 messages.properties >--- src/org/eclipse/mylyn/internal/jira/core/service/messages.properties 24 Jul 2009 12:04:22 -0000 1.2 >+++ src/org/eclipse/mylyn/internal/jira/core/service/messages.properties 25 Sep 2009 12:36:20 -0000 >@@ -9,4 +9,11 @@ > # Tasktop Technologies - initial API and implementation > ############################################################################### > JiraClientCache_Getting_server_information=Getting server information >-JiraClientCache_Updating_repository_configuration=Updating repository configuration >+JiraClientCache_Updating_repository_configuration=Updating repository configuration (may take even 15 minutes) >+JiraClientCache_getting_issue_types=Getting issue types >+JiraClientCache_getting_priorities=Getting priorities >+JiraClientCache_getting_project_details=Getting project details >+JiraClientCache_getting_resolutions=Gettings resolutions >+JiraClientCache_getting_server_info=Getting server info >+JiraClientCache_getting_statuses=Getting statuses >+JiraClientCache_project_details_for=Getting project details for {0} >Index: src/org/eclipse/mylyn/internal/jira/core/service/Messages.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.jira.core/src/org/eclipse/mylyn/internal/jira/core/service/Messages.java,v >retrieving revision 1.1 >diff -u -r1.1 Messages.java >--- src/org/eclipse/mylyn/internal/jira/core/service/Messages.java 3 Dec 2008 05:05:46 -0000 1.1 >+++ src/org/eclipse/mylyn/internal/jira/core/service/Messages.java 25 Sep 2009 12:36:20 -0000 >@@ -28,4 +28,19 @@ > public static String JiraClientCache_Getting_server_information; > > public static String JiraClientCache_Updating_repository_configuration; >+ >+ public static String JiraClientCache_getting_issue_types; >+ >+ public static String JiraClientCache_getting_priorities; >+ >+ public static String JiraClientCache_getting_project_details; >+ >+ public static String JiraClientCache_getting_resolutions; >+ >+ public static String JiraClientCache_getting_server_info; >+ >+ public static String JiraClientCache_getting_statuses; >+ >+ public static String JiraClientCache_project_details_for; >+ > } >Index: src/org/eclipse/mylyn/internal/jira/core/JiraRepositoryConnector.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.jira.core/src/org/eclipse/mylyn/internal/jira/core/JiraRepositoryConnector.java,v >retrieving revision 1.52 >diff -u -r1.52 JiraRepositoryConnector.java >--- src/org/eclipse/mylyn/internal/jira/core/JiraRepositoryConnector.java 24 Sep 2009 04:30:03 -0000 1.52 >+++ src/org/eclipse/mylyn/internal/jira/core/JiraRepositoryConnector.java 25 Sep 2009 12:36:19 -0000 >@@ -418,6 +418,20 @@ > } > > @Override >+ public void updateTaskConfiguration(TaskRepository taskRepository, TaskData task, IProgressMonitor monitor) >+ throws CoreException { >+ try { >+ JiraClient client = JiraClientFactory.getDefault().getJiraClient(taskRepository); >+ client.getCache().refreshProjectDetails(task.getRoot().getAttribute(JiraAttribute.PROJECT.id()).getValue(), >+ monitor); >+ } catch (JiraException e) { >+ IStatus status = JiraCorePlugin.toStatus(taskRepository, e); >+ trace(status); >+ throw new CoreException(status); >+ } >+ } >+ >+ @Override > public String getTaskIdPrefix() { > return "issue"; //$NON-NLS-1$ > } >#P org.eclipse.mylyn.tasks.ui >Index: src/org/eclipse/mylyn/internal/tasks/ui/editors/TaskEditorAttributePart.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/editors/TaskEditorAttributePart.java,v >retrieving revision 1.44 >diff -u -r1.44 TaskEditorAttributePart.java >--- src/org/eclipse/mylyn/internal/tasks/ui/editors/TaskEditorAttributePart.java 13 Aug 2009 22:23:25 -0000 1.44 >+++ src/org/eclipse/mylyn/internal/tasks/ui/editors/TaskEditorAttributePart.java 25 Sep 2009 12:36:23 -0000 >@@ -229,8 +229,9 @@ > @Override > public void run() { > getTaskEditorPage().showEditorBusy(true); >- final TaskJob job = TasksUiInternal.getJobFactory().createUpdateRepositoryConfigurationJob( >- getTaskEditorPage().getConnector(), getTaskEditorPage().getTaskRepository()); >+ final TaskJob job = TasksUiInternal.getJobFactory().createUpdateTaskConfigurationJob( >+ getTaskEditorPage().getConnector(), getTaskEditorPage().getTaskRepository(), >+ getTaskEditorPage().getModel().getTaskData()); > job.addJobChangeListener(new JobChangeAdapter() { > @Override > public void done(IJobChangeEvent event) { >@@ -238,10 +239,9 @@ > public void run() { > getTaskEditorPage().showEditorBusy(false); > if (job.getStatus() != null) { >- getTaskEditorPage().getTaskEditor() >- .setStatus( >- Messages.TaskEditorAttributePart_Updating_of_repository_configuration_failed, >- Messages.TaskEditorAttributePart_Update_Failed, job.getStatus()); >+ getTaskEditorPage().getTaskEditor().setStatus( >+ Messages.TaskEditorAttributePart_Updating_of_task_configuration_failed, >+ Messages.TaskEditorAttributePart_Update_Failed, job.getStatus()); > } else { > getTaskEditorPage().refreshFormContent(); > } >Index: src/org/eclipse/mylyn/internal/tasks/ui/editors/messages.properties >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/editors/messages.properties,v >retrieving revision 1.29 >diff -u -r1.29 messages.properties >--- src/org/eclipse/mylyn/internal/tasks/ui/editors/messages.properties 18 Sep 2009 23:26:57 -0000 1.29 >+++ src/org/eclipse/mylyn/internal/tasks/ui/editors/messages.properties 25 Sep 2009 12:36:23 -0000 >@@ -63,6 +63,7 @@ > TaskEditorAttributePart_Refresh_Attributes=Refresh Attributes > TaskEditorAttributePart_Update_Failed=Update Failed > TaskEditorAttributePart_Updating_of_repository_configuration_failed=Updating of repository configuration failed >+TaskEditorAttributePart_Updating_of_task_configuration_failed=Updating of task configuration failed > > TaskEditorCommentPart_0=\ ( > TaskEditorCommentPart_1=) >Index: src/org/eclipse/mylyn/internal/tasks/ui/editors/Messages.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/editors/Messages.java,v >retrieving revision 1.22 >diff -u -r1.22 Messages.java >--- src/org/eclipse/mylyn/internal/tasks/ui/editors/Messages.java 17 Sep 2009 21:21:37 -0000 1.22 >+++ src/org/eclipse/mylyn/internal/tasks/ui/editors/Messages.java 25 Sep 2009 12:36:23 -0000 >@@ -250,4 +250,6 @@ > public static String TaskEditorExtensionSettingsContribution_Plain_Text; > > public static String TaskEditorExtensionSettingsContribution_Select_the_capabilities_of_the_task_editor; >+ >+ public static String TaskEditorAttributePart_Updating_of_task_configuration_failed; > } >Index: src/org/eclipse/mylyn/internal/tasks/ui/messages.properties >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/messages.properties,v >retrieving revision 1.13 >diff -u -r1.13 messages.properties >--- src/org/eclipse/mylyn/internal/tasks/ui/messages.properties 17 Sep 2009 02:16:07 -0000 1.13 >+++ src/org/eclipse/mylyn/internal/tasks/ui/messages.properties 25 Sep 2009 12:36:23 -0000 >@@ -41,6 +41,7 @@ > > TaskJobFactory_Receiving_configuration=Receiving configuration > TaskJobFactory_Refreshing_repository_configuration=Refreshing repository configuration >+TaskJobFactory_Refreshing_task_configuration=Refreshing task configuration > > TaskListBackupManager_Error_occured_during_scheduled_tasklist_backup=Error occured during scheduled tasklist backup.\nCheck settings on Tasklist preferences page. > TaskListBackupManager_Scheduled_task_data_backup=Scheduled task data backup >Index: src/org/eclipse/mylyn/internal/tasks/ui/Messages.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/Messages.java,v >retrieving revision 1.8 >diff -u -r1.8 Messages.java >--- src/org/eclipse/mylyn/internal/tasks/ui/Messages.java 17 Sep 2009 02:16:07 -0000 1.8 >+++ src/org/eclipse/mylyn/internal/tasks/ui/Messages.java 25 Sep 2009 12:36:23 -0000 >@@ -125,4 +125,5 @@ > > public static String AbstractRetrieveTitleFromUrlJob_Retrieving_summary_from_URL; > >+ public static String TaskJobFactory_Refreshing_task_configuration; > } >Index: src/org/eclipse/mylyn/internal/tasks/ui/TaskJobFactory.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/TaskJobFactory.java,v >retrieving revision 1.22 >diff -u -r1.22 TaskJobFactory.java >--- src/org/eclipse/mylyn/internal/tasks/ui/TaskJobFactory.java 24 Jul 2009 12:05:46 -0000 1.22 >+++ src/org/eclipse/mylyn/internal/tasks/ui/TaskJobFactory.java 25 Sep 2009 12:36:23 -0000 >@@ -161,6 +161,40 @@ > return updateJob; > } > >+ public TaskJob createUpdateTaskConfigurationJob(final AbstractRepositoryConnector connector, >+ final TaskRepository taskRepository, final TaskData task) { >+ TaskJob updateJob = new TaskJob(Messages.TaskJobFactory_Refreshing_task_configuration) { >+ private IStatus error; >+ >+ @Override >+ protected IStatus run(IProgressMonitor monitor) { >+ monitor.beginTask(Messages.TaskJobFactory_Receiving_configuration, IProgressMonitor.UNKNOWN); >+ try { >+ try { >+ connector.updateTaskConfiguration(taskRepository, task, monitor); >+ } catch (CoreException e) { >+ error = e.getStatus(); >+ } >+ } finally { >+ monitor.done(); >+ } >+ return Status.OK_STATUS; >+ } >+ >+ @Override >+ public boolean belongsTo(Object family) { >+ return family == taskRepository; >+ } >+ >+ @Override >+ public IStatus getStatus() { >+ return error; >+ } >+ }; >+ updateJob.setPriority(Job.INTERACTIVE); >+ return updateJob; >+ } >+ > public SubmitJob createSubmitTaskAttachmentJob(AbstractRepositoryConnector connector, > TaskRepository taskRepository, final ITask task, AbstractTaskAttachmentSource source, String comment, > TaskAttribute attachmentAttribute) { >#P org.eclipse.mylyn.tasks.core >Index: src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java,v >retrieving revision 1.115 >diff -u -r1.115 AbstractRepositoryConnector.java >--- src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java 28 Aug 2009 20:00:07 -0000 1.115 >+++ src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java 25 Sep 2009 12:36:31 -0000 >@@ -29,9 +29,7 @@ > > /** > * Encapsulates common operations that can be performed on a task repository. Extend to connect with a Java API or WS >- * API for accessing the repository. >- * >- * Only methods that take a progress monitor can do network I/O. >+ * API for accessing the repository. Only methods that take a progress monitor can do network I/O. > * > * @author Mik Kersten > * @author Rob Elves >@@ -226,7 +224,6 @@ > /** > * Runs <code>query</code> on <code>repository</code>, results are passed to <code>collector</code>. If a repository > * does not return the full task data for a result, {@link TaskData#isPartial()} will return true. >- * > * <p> > * Implementors must complete executing <code>query</code> before returning from this method. > * >@@ -298,4 +295,13 @@ > */ > public abstract void updateTaskFromTaskData(TaskRepository taskRepository, ITask task, TaskData taskData); > >+ /** >+ * @throws CoreException >+ * @since 3.3 >+ */ >+ public void updateTaskConfiguration(TaskRepository taskRepository, TaskData task, IProgressMonitor monitor) >+ throws CoreException { >+ updateRepositoryConfiguration(taskRepository, monitor); >+ } >+ > } >Index: src/org/eclipse/mylyn/internal/tasks/core/ITaskJobFactory.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/ITaskJobFactory.java,v >retrieving revision 1.6 >diff -u -r1.6 ITaskJobFactory.java >--- src/org/eclipse/mylyn/internal/tasks/core/ITaskJobFactory.java 13 Jan 2009 07:05:10 -0000 1.6 >+++ src/org/eclipse/mylyn/internal/tasks/core/ITaskJobFactory.java 25 Sep 2009 12:36:30 -0000 >@@ -43,6 +43,9 @@ > public abstract TaskJob createUpdateRepositoryConfigurationJob(AbstractRepositoryConnector connector, > TaskRepository taskRepository); > >+ public abstract TaskJob createUpdateTaskConfigurationJob(AbstractRepositoryConnector connector, >+ TaskRepository taskRepository, TaskData task); >+ > public abstract SubmitJob createSubmitTaskAttachmentJob(AbstractRepositoryConnector connector, > TaskRepository taskRepository, ITask task, AbstractTaskAttachmentSource source, String comment, > TaskAttribute attachmentAttribute);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 290490
:
148100
|
148101
|
148231
|
148232
|
148292
|
148317
|
148318