diff options
Diffstat (limited to 'org.eclipse.mylyn.tasks.core')
3 files changed, 29 insertions, 0 deletions
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeQueriesJob.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeQueriesJob.java index cc059e3fc..11d531ca6 100644 --- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeQueriesJob.java +++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeQueriesJob.java @@ -103,6 +103,19 @@ public class SynchronizeQueriesJob extends SynchronizationJob { return resultCount; } + @Override + public void failed(String taskId, IStatus status) { + ITask task = taskList.getTask(repositoryQuery.getRepositoryUrl(), taskId); + if (task != null && status != null) { + statuses.add(status); + ((AbstractTask) task).setStatus(status); + if (!isUser()) { + ((AbstractTask) task).setSynchronizing(false); + } + taskList.notifyElementChanged(task); + } + } + } public static final String MAX_HITS_REACHED = Messages.SynchronizeQueriesJob_Max_allowed_number_of_hits_returned_exceeded; diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeTasksJob.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeTasksJob.java index 4af0912c0..ac8e38de3 100644 --- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeTasksJob.java +++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeTasksJob.java @@ -276,6 +276,14 @@ public class SynchronizeTasksJob extends SynchronizationJob { updateFromTaskData(repository, task, taskData); } } + + @Override + public void failed(String taskId, IStatus status) { + ITask task = idToTask.get(taskId); + if (task != null) { + updateStatus(taskRepository, task, status); + } + } }; if (!isUser()) { diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskDataCollector.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskDataCollector.java index 4dda0f07a..947bfe7eb 100644 --- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskDataCollector.java +++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskDataCollector.java @@ -11,6 +11,8 @@ package org.eclipse.mylyn.tasks.core.data; +import org.eclipse.core.runtime.IStatus; + /** * This class is used for collecting tasks, e.g. when performing queries on a repository. * @@ -26,4 +28,10 @@ public abstract class TaskDataCollector { public abstract void accept(TaskData taskData); + /** + * @since 3.3 + */ + public void failed(String taskId, IStatus status) { + } + } |