Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorspingel2008-04-09 06:05:16 +0000
committerspingel2008-04-09 06:05:16 +0000
commitaf4d76bdbed508ad81e8ed229bdaa0f1b39f4e7b (patch)
tree4574eb744529eebc2e8e30ff4d97cf8e99c2fff5
parent5f580aeac07c62c2713469552819f812a00accb5 (diff)
downloadorg.eclipse.mylyn.tasks-af4d76bdbed508ad81e8ed229bdaa0f1b39f4e7b.tar.gz
org.eclipse.mylyn.tasks-af4d76bdbed508ad81e8ed229bdaa0f1b39f4e7b.tar.xz
org.eclipse.mylyn.tasks-af4d76bdbed508ad81e8ed229bdaa0f1b39f4e7b.zip
NEW - bug 225040: mark internal packages as x-internal
https://bugs.eclipse.org/bugs/show_bug.cgi?id=225040
-rw-r--r--org.eclipse.mylyn.tasks.core/META-INF/MANIFEST.MF3
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/TaskDataManager.java3
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/RepositorySynchronizationManager.java3
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeAllTasksJob.java5
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeQueriesJob.java5
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeTasksJob.java5
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java23
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/ITaskDataManager.java27
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/TaskSelection.java5
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/IRepositorySynchronizationManager.java28
-rw-r--r--org.eclipse.mylyn.tasks.ui/.settings/.api_filters4
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/AttachmentUtil.java4
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/ScheduledTaskListSynchJob.java4
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/SynchronizeSelectedAction.java4
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/util/TaskListWriter.java4
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/TasksUiPlugin.java29
16 files changed, 120 insertions, 36 deletions
diff --git a/org.eclipse.mylyn.tasks.core/META-INF/MANIFEST.MF b/org.eclipse.mylyn.tasks.core/META-INF/MANIFEST.MF
index aed9aec0a..dd8b8a943 100644
--- a/org.eclipse.mylyn.tasks.core/META-INF/MANIFEST.MF
+++ b/org.eclipse.mylyn.tasks.core/META-INF/MANIFEST.MF
@@ -12,4 +12,5 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.mylyn.web.core;bundle-version="[3.0.0,4.0.0)"
Export-Package: org.eclipse.mylyn.internal.tasks.core;x-friends:="org.eclipse.mylyn.tasks.ui",
org.eclipse.mylyn.internal.tasks.core.sync;x-friends:="org.eclipse.mylyn.tasks.ui",
- org.eclipse.mylyn.tasks.core
+ org.eclipse.mylyn.tasks.core,
+ org.eclipse.mylyn.tasks.core.sync
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/TaskDataManager.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/TaskDataManager.java
index 1391eab36..d995fbe96 100644
--- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/TaskDataManager.java
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/TaskDataManager.java
@@ -20,6 +20,7 @@ import org.eclipse.core.runtime.Status;
import org.eclipse.mylyn.monitor.core.StatusHandler;
import org.eclipse.mylyn.tasks.core.AbstractAttributeFactory;
import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector;
+import org.eclipse.mylyn.tasks.core.ITaskDataManager;
import org.eclipse.mylyn.tasks.core.RepositoryTaskAttribute;
import org.eclipse.mylyn.tasks.core.RepositoryTaskData;
import org.eclipse.mylyn.tasks.core.TaskRepositoryManager;
@@ -29,7 +30,7 @@ import org.eclipse.mylyn.tasks.core.TaskRepositoryManager;
*
* @author Rob Elves
*/
-public class TaskDataManager {
+public class TaskDataManager implements ITaskDataManager {
private final TaskRepositoryManager taskRepositoryManager;
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/RepositorySynchronizationManager.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/RepositorySynchronizationManager.java
index 7ec84b463..193aaa327 100644
--- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/RepositorySynchronizationManager.java
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/RepositorySynchronizationManager.java
@@ -19,6 +19,7 @@ import org.eclipse.mylyn.tasks.core.RepositoryTaskAttribute;
import org.eclipse.mylyn.tasks.core.RepositoryTaskData;
import org.eclipse.mylyn.tasks.core.TaskList;
import org.eclipse.mylyn.tasks.core.AbstractTask.RepositoryTaskSyncState;
+import org.eclipse.mylyn.tasks.core.sync.IRepositorySynchronizationManager;
/**
* Encapsulates synchronization policy.
@@ -27,7 +28,7 @@ import org.eclipse.mylyn.tasks.core.AbstractTask.RepositoryTaskSyncState;
* @author Rob Elves
* @author Steffen Pingel
*/
-public final class RepositorySynchronizationManager {
+public final class RepositorySynchronizationManager implements IRepositorySynchronizationManager {
private final TaskDataManager taskDataManager;
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeAllTasksJob.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeAllTasksJob.java
index 1ece8386d..a35b6e867 100644
--- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeAllTasksJob.java
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/sync/SynchronizeAllTasksJob.java
@@ -23,6 +23,7 @@ import org.eclipse.mylyn.tasks.core.SynchronizeJob;
import org.eclipse.mylyn.tasks.core.TaskList;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.core.TaskRepositoryManager;
+import org.eclipse.mylyn.tasks.core.sync.IRepositorySynchronizationManager;
/**
* @author Steffen Pingel
@@ -35,7 +36,7 @@ public class SynchronizeAllTasksJob extends SynchronizeJob {
private boolean forced = false;
- private final RepositorySynchronizationManager synchronizationManager;
+ private final IRepositorySynchronizationManager synchronizationManager;
private final TaskList taskList;
@@ -43,7 +44,7 @@ public class SynchronizeAllTasksJob extends SynchronizeJob {
private final TaskRepositoryManager repositoryManager;
- public SynchronizeAllTasksJob(TaskList taskList, RepositorySynchronizationManager synchronizationManager,
+ public SynchronizeAllTasksJob(TaskList taskList, IRepositorySynchronizationManager synchronizationManager,
TaskRepositoryManager repositoryManager, AbstractRepositoryConnector connector, Set<AbstractTask> tasks) {
super(LABEL_SYNCHRONIZE_TASK + " (" + tasks.size() + " tasks)");
this.taskList = taskList;
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 918621618..bf1e206fd 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
@@ -32,6 +32,7 @@ import org.eclipse.mylyn.tasks.core.SynchronizeJob;
import org.eclipse.mylyn.tasks.core.TaskList;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.core.AbstractTask.RepositoryTaskSyncState;
+import org.eclipse.mylyn.tasks.core.sync.IRepositorySynchronizationManager;
/**
* @author Mik Kersten
@@ -58,9 +59,9 @@ public class SynchronizeQueriesJob extends SynchronizeJob {
private boolean fullSynchronization = true;
- private final RepositorySynchronizationManager synchronizationManager;
+ private final IRepositorySynchronizationManager synchronizationManager;
- public SynchronizeQueriesJob(TaskList taskList, RepositorySynchronizationManager synchronizationManager,
+ public SynchronizeQueriesJob(TaskList taskList, IRepositorySynchronizationManager synchronizationManager,
AbstractRepositoryConnector connector, TaskRepository repository, Set<AbstractRepositoryQuery> queries) {
super("Synchronizing queries for " + repository.getRepositoryLabel());
this.taskList = taskList;
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 ff8fd61fd..0849991c7 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
@@ -29,6 +29,7 @@ import org.eclipse.mylyn.tasks.core.SynchronizeJob;
import org.eclipse.mylyn.tasks.core.TaskList;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.core.AbstractTask.RepositoryTaskSyncState;
+import org.eclipse.mylyn.tasks.core.sync.IRepositorySynchronizationManager;
import org.eclipse.mylyn.web.core.Policy;
/**
@@ -46,7 +47,7 @@ public class SynchronizeTasksJob extends SynchronizeJob {
private boolean forced = false;
- private final RepositorySynchronizationManager synchronizationManager;
+ private final IRepositorySynchronizationManager synchronizationManager;
private final AbstractTaskDataHandler taskDataHandler;
@@ -56,7 +57,7 @@ public class SynchronizeTasksJob extends SynchronizeJob {
private final Set<AbstractTask> tasks;
- public SynchronizeTasksJob(TaskList taskList, RepositorySynchronizationManager synchronizationManager,
+ public SynchronizeTasksJob(TaskList taskList, IRepositorySynchronizationManager synchronizationManager,
AbstractRepositoryConnector connector, TaskRepository taskRepository, Set<AbstractTask> tasks) {
super(LABEL_SYNCHRONIZE_TASK + " (" + tasks.size() + " tasks)");
this.taskList = taskList;
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java
index 02e0967e1..5ddb00380 100644
--- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/AbstractRepositoryConnector.java
@@ -19,8 +19,8 @@ import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.SubProgressMonitor;
import org.eclipse.mylyn.internal.tasks.core.IRepositoryConstants;
import org.eclipse.mylyn.internal.tasks.core.RepositoryTemplateManager;
-import org.eclipse.mylyn.internal.tasks.core.TaskDataManager;
import org.eclipse.mylyn.tasks.core.AbstractTask.RepositoryTaskSyncState;
+import org.eclipse.mylyn.tasks.core.sync.IRepositorySynchronizationManager;
/**
* Encapsulates common operations that can be performed on a task repository. Extend to connect with a Java API or WS
@@ -44,7 +44,9 @@ public abstract class AbstractRepositoryConnector {
private boolean userManaged = true;
- private TaskDataManager taskDataManager;
+ private ITaskDataManager taskDataManager;
+
+ private IRepositorySynchronizationManager synchronizationManager;
public void init(TaskList taskList) {
this.taskList = taskList;
@@ -52,9 +54,12 @@ public abstract class AbstractRepositoryConnector {
/**
* Set upon construction
+ *
+ * @since 3.0
*/
- public void setTaskDataManager(TaskDataManager taskDataManager) {
+ public void init2(ITaskDataManager taskDataManager, IRepositorySynchronizationManager synchronizationManager) {
this.taskDataManager = taskDataManager;
+ this.synchronizationManager = synchronizationManager;
}
/**
@@ -459,13 +464,23 @@ public abstract class AbstractRepositoryConnector {
return null;
}
- private TaskDataManager getTaskDataManager() {
+ /**
+ * @since 3.0
+ */
+ protected ITaskDataManager getTaskDataManager() {
return taskDataManager;
}
/**
* @since 3.0
*/
+ protected IRepositorySynchronizationManager getSynchronizationManager() {
+ return synchronizationManager;
+ }
+
+ /**
+ * @since 3.0
+ */
public void preSynchronization(SynchronizationEvent event, IProgressMonitor monitor) throws CoreException {
}
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/ITaskDataManager.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/ITaskDataManager.java
new file mode 100644
index 000000000..c4f0653b0
--- /dev/null
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/ITaskDataManager.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Mylyn project committers and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+
+package org.eclipse.mylyn.tasks.core;
+
+/**
+ * @author Steffen Pingel
+ * @since 3.0
+ */
+public interface ITaskDataManager {
+
+ /**
+ * Returns the most recent copy of the task data.
+ *
+ * @return offline task data, null if no data found
+ */
+ public abstract RepositoryTaskData getNewTaskData(String repositoryUrl, String id);
+
+ @Deprecated
+ public abstract void setNewTaskData(RepositoryTaskData taskData);
+
+} \ No newline at end of file
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/TaskSelection.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/TaskSelection.java
index 98154e146..bd32a021c 100644
--- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/TaskSelection.java
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/TaskSelection.java
@@ -8,12 +8,11 @@
package org.eclipse.mylyn.tasks.core;
-
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants;
import org.eclipse.mylyn.internal.tasks.core.LocalRepositoryConnector;
-import org.eclipse.mylyn.internal.tasks.core.TaskDataManager;
+import org.eclipse.mylyn.internal.tasks.core.TaskDataManager.ObjectCloner;
import org.eclipse.mylyn.monitor.core.StatusHandler;
/**
@@ -30,7 +29,7 @@ public class TaskSelection {
}
try {
- this.taskData = (RepositoryTaskData) TaskDataManager.ObjectCloner.deepCopy(taskData);
+ this.taskData = (RepositoryTaskData) ObjectCloner.deepCopy(taskData);
this.taskData.setAttributeFactory(taskData.getAttributeFactory());
this.taskData.refresh();
} catch (Exception e) {
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/IRepositorySynchronizationManager.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/IRepositorySynchronizationManager.java
new file mode 100644
index 000000000..cff3f75ef
--- /dev/null
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/IRepositorySynchronizationManager.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Mylyn project committers and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+
+package org.eclipse.mylyn.tasks.core.sync;
+
+import org.eclipse.mylyn.tasks.core.AbstractTask;
+import org.eclipse.mylyn.tasks.core.RepositoryTaskData;
+
+/**
+ * @author Steffen Pingel
+ * @since 3.0
+ */
+public interface IRepositorySynchronizationManager {
+
+ /**
+ * Saves incoming data and updates task sync state appropriately
+ *
+ * @return true if call results in change of sync state
+ */
+ public abstract boolean saveIncoming(final AbstractTask repositoryTask, final RepositoryTaskData newTaskData,
+ boolean forceSync);
+
+} \ No newline at end of file
diff --git a/org.eclipse.mylyn.tasks.ui/.settings/.api_filters b/org.eclipse.mylyn.tasks.ui/.settings/.api_filters
index 5d7fc6142..baba73178 100644
--- a/org.eclipse.mylyn.tasks.ui/.settings/.api_filters
+++ b/org.eclipse.mylyn.tasks.ui/.settings/.api_filters
@@ -11,10 +11,6 @@
<filter id="643846161" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.IRepositoryTaskAttributeListener"/>
<filter id="643846161" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.IRepositoryTaskAttributeListener"/>
<filter id="643842064" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTaskOutlinePage"/>
- <filter id="643846161" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTaskOutlineNode"/>
- <filter id="643842064" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTaskOutlineNode"/>
- <filter id="643842064" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTaskOutlinePage"/>
- <filter id="643846161" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.IRepositoryTaskAttributeListener"/>
<filter id="643842064" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTaskOutlineNode"/>
<filter id="643846161" messageargs="org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTaskOutlineNode"/>
</resource>
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/AttachmentUtil.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/AttachmentUtil.java
index ed3a5e47f..a1c6e899d 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/AttachmentUtil.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/AttachmentUtil.java
@@ -21,11 +21,11 @@ import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.OperationCanceledException;
import org.eclipse.core.runtime.Status;
import org.eclipse.mylyn.context.core.ContextCore;
-import org.eclipse.mylyn.internal.tasks.core.TaskDataManager;
import org.eclipse.mylyn.monitor.core.StatusHandler;
import org.eclipse.mylyn.tasks.core.AbstractAttachmentHandler;
import org.eclipse.mylyn.tasks.core.AbstractTask;
import org.eclipse.mylyn.tasks.core.FileAttachment;
+import org.eclipse.mylyn.tasks.core.ITaskDataManager;
import org.eclipse.mylyn.tasks.core.RepositoryAttachment;
import org.eclipse.mylyn.tasks.core.RepositoryStatus;
import org.eclipse.mylyn.tasks.core.RepositoryTaskData;
@@ -85,7 +85,7 @@ public class AttachmentUtil {
* @return an empty set if no contexts
*/
public static Set<RepositoryAttachment> getContextAttachments(TaskRepository repository, AbstractTask task) {
- TaskDataManager taskDataManager = TasksUiPlugin.getTaskDataManager();
+ ITaskDataManager taskDataManager = TasksUiPlugin.getTaskDataManager();
Set<RepositoryAttachment> contextAttachments = new HashSet<RepositoryAttachment>();
if (taskDataManager != null) {
RepositoryTaskData newData = taskDataManager.getNewTaskData(task.getRepositoryUrl(), task.getTaskId());
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/ScheduledTaskListSynchJob.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/ScheduledTaskListSynchJob.java
index e4c3c4677..32b1c8c5f 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/ScheduledTaskListSynchJob.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/ScheduledTaskListSynchJob.java
@@ -18,11 +18,11 @@ import org.eclipse.core.runtime.OperationCanceledException;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.SubProgressMonitor;
import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.mylyn.internal.tasks.core.sync.RepositorySynchronizationManager;
import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector;
import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery;
import org.eclipse.mylyn.tasks.core.TaskList;
import org.eclipse.mylyn.tasks.core.TaskRepository;
+import org.eclipse.mylyn.tasks.core.sync.IRepositorySynchronizationManager;
import org.eclipse.mylyn.tasks.ui.TaskListManager;
import org.eclipse.mylyn.tasks.ui.TasksUi;
import org.eclipse.mylyn.tasks.ui.TasksUiPlugin;
@@ -108,7 +108,7 @@ public class ScheduledTaskListSynchJob extends Job {
continue;
}
- RepositorySynchronizationManager synchronizationManager = TasksUiPlugin.getSynchronizationManager();
+ IRepositorySynchronizationManager synchronizationManager = TasksUiPlugin.getSynchronizationManager();
Set<AbstractRepositoryQuery> queries = taskList.getRepositoryQueries(repository.getRepositoryUrl());
try {
// Occasionally request update of repository configuration attributes
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/SynchronizeSelectedAction.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/SynchronizeSelectedAction.java
index 3e2757e69..9bef0a8e8 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/SynchronizeSelectedAction.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/SynchronizeSelectedAction.java
@@ -21,12 +21,12 @@ import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.mylyn.internal.tasks.core.TaskCategory;
-import org.eclipse.mylyn.internal.tasks.core.sync.RepositorySynchronizationManager;
import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView;
import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector;
import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery;
import org.eclipse.mylyn.tasks.core.AbstractTask;
import org.eclipse.mylyn.tasks.core.TaskRepository;
+import org.eclipse.mylyn.tasks.core.sync.IRepositorySynchronizationManager;
import org.eclipse.mylyn.tasks.ui.TasksUi;
import org.eclipse.mylyn.tasks.ui.TasksUiPlugin;
import org.eclipse.ui.IActionBars;
@@ -79,7 +79,7 @@ public class SynchronizeSelectedAction extends ActionDelegate implements IViewAc
}
}
- RepositorySynchronizationManager syncManager = TasksUiPlugin.getSynchronizationManager();
+ IRepositorySynchronizationManager syncManager = TasksUiPlugin.getSynchronizationManager();
if (!queriesToSyncMap.isEmpty()) {
// determine which repositories to synch changed tasks for
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/util/TaskListWriter.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/util/TaskListWriter.java
index 86db12731..2d0428c9d 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/util/TaskListWriter.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/util/TaskListWriter.java
@@ -46,7 +46,6 @@ import org.eclipse.mylyn.context.core.ContextCore;
import org.eclipse.mylyn.internal.context.core.ContextCorePlugin;
import org.eclipse.mylyn.internal.context.core.InteractionContext;
import org.eclipse.mylyn.internal.context.core.InteractionContextExternalizer;
-import org.eclipse.mylyn.internal.tasks.core.TaskDataManager;
import org.eclipse.mylyn.internal.tasks.core.TaskExternalizationException;
import org.eclipse.mylyn.internal.tasks.core.TaskRepositoriesExternalizer;
import org.eclipse.mylyn.internal.tasks.ui.ITasksUiConstants;
@@ -55,6 +54,7 @@ import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery;
import org.eclipse.mylyn.tasks.core.AbstractTask;
import org.eclipse.mylyn.tasks.core.AbstractTaskContainer;
import org.eclipse.mylyn.tasks.core.AbstractTaskListFactory;
+import org.eclipse.mylyn.tasks.core.ITaskDataManager;
import org.eclipse.mylyn.tasks.core.TaskList;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.ui.TasksUiPlugin;
@@ -247,7 +247,7 @@ public class TaskListWriter {
/**
* TODO: fix this old mess
*/
- public void readTaskList(TaskList taskList, File inFile, TaskDataManager taskDataManager) {
+ public void readTaskList(TaskList taskList, File inFile, ITaskDataManager taskDataManager) {
hasCaughtException = false;
Map<AbstractTask, NodeList> tasksWithSubtasks = new HashMap<AbstractTask, NodeList>();
orphanedTaskNodes.clear();
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/TasksUiPlugin.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/TasksUiPlugin.java
index fd4029128..5a9ce4c3c 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/TasksUiPlugin.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/TasksUiPlugin.java
@@ -19,7 +19,6 @@ import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
-import org.eclipse.core.internal.net.ProxyManager;
import org.eclipse.core.net.proxy.IProxyChangeListener;
import org.eclipse.core.net.proxy.IProxyService;
import org.eclipse.core.resources.IResource;
@@ -97,6 +96,7 @@ import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.eclipse.ui.progress.UIJob;
import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceReference;
/**
* Main entry point for the Tasks UI.
@@ -343,6 +343,8 @@ public class TasksUiPlugin extends AbstractUIPlugin {
private TaskActivityMonitor taskActivityMonitor;
+ private ServiceReference proxyServiceReference;
+
private class TasksUiInitializationJob extends UIJob {
public TasksUiInitializationJob() {
@@ -449,9 +451,14 @@ public class TasksUiPlugin extends AbstractUIPlugin {
taskActivityManager = new TaskActivityManager(taskRepositoryManager, taskListManager.getTaskList());
updateTaskActivityManager();
- IProxyService proxyService = ProxyManager.getProxyManager();
- IProxyChangeListener proxyChangeListener = new TasksUiProxyChangeListener(taskRepositoryManager);
- proxyService.addProxyChangeListener(proxyChangeListener);
+ proxyServiceReference = context.getServiceReference(IProxyService.class.getName());
+ if (proxyServiceReference != null) {
+ IProxyService proxyService = (IProxyService) context.getService(proxyServiceReference);
+ if (proxyService != null) {
+ IProxyChangeListener proxyChangeListener = new TasksUiProxyChangeListener(taskRepositoryManager);
+ proxyService.addProxyChangeListener(proxyChangeListener);
+ }
+ }
repositoryTemplateManager = new RepositoryTemplateManager();
@@ -467,6 +474,10 @@ public class TasksUiPlugin extends AbstractUIPlugin {
synchronizationManager = new RepositorySynchronizationManager(taskDataManager,
taskListManager.getTaskList());
+ for (AbstractRepositoryConnector connector : taskRepositoryManager.getRepositoryConnectors()) {
+ connector.init2(taskDataManager, synchronizationManager);
+ }
+
loadTemplateRepositories();
// NOTE: task list must be read before Task List view can be
@@ -523,9 +534,7 @@ public class TasksUiPlugin extends AbstractUIPlugin {
// Add the automatically created templates
for (AbstractRepositoryConnector connector : taskRepositoryManager.getRepositoryConnectors()) {
- connector.setTaskDataManager(taskDataManager);
-
- for (RepositoryTemplate template : connector.getTemplates()) {
+ for (RepositoryTemplate template : repositoryTemplateManager.getTemplates(connector.getConnectorKind())) {
if (template.addAutomatically && !TaskRepositoryUtil.isAddAutomaticallyDisabled(template.repositoryUrl)) {
try {
@@ -535,7 +544,6 @@ public class TasksUiPlugin extends AbstractUIPlugin {
taskRepository = new TaskRepository(connector.getConnectorKind(), template.repositoryUrl);
taskRepository.setVersion(template.version);
taskRepository.setRepositoryLabel(template.label);
- taskRepository.setAnonymous(true);
taskRepository.setCharacterEncoding(template.characterEncoding);
taskRepository.setAnonymous(template.anonymous);
taskRepositoryManager.addRepository(taskRepository, getRepositoriesFilePath());
@@ -580,6 +588,11 @@ public class TasksUiPlugin extends AbstractUIPlugin {
ResourcesPlugin.getWorkspace().removeSaveParticipant(this);
}
+ if (proxyServiceReference != null) {
+ // TODO remove proxy listener?
+ context.ungetService(proxyServiceReference);
+ }
+
if (PlatformUI.isWorkbenchRunning()) {
getPreferenceStore().removePropertyChangeListener(taskListNotificationManager);
getPreferenceStore().removePropertyChangeListener(taskListBackupManager);

Back to the top