Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 233999
Collapse All | Expand All

(-)src/org/eclipse/mylyn/internal/sandbox/ui/IncomingTaskListContentProvider.java (-2 / +21 lines)
Lines 8-16 Link Here
8
8
9
package org.eclipse.mylyn.internal.sandbox.ui;
9
package org.eclipse.mylyn.internal.sandbox.ui;
10
10
11
import java.util.Collection;
11
import java.util.HashSet;
12
import java.util.HashSet;
12
import java.util.Set;
13
import java.util.Set;
13
14
15
import org.eclipse.mylyn.internal.tasks.core.AbstractTask;
14
import org.eclipse.mylyn.internal.tasks.core.AbstractTaskContainer;
16
import org.eclipse.mylyn.internal.tasks.core.AbstractTaskContainer;
15
import org.eclipse.mylyn.internal.tasks.core.Person;
17
import org.eclipse.mylyn.internal.tasks.core.Person;
16
import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin;
18
import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin;
Lines 39-45 Link Here
39
			for (ITaskContainer container : applyFilter(TasksUiPlugin.getTaskListManager()
41
			for (ITaskContainer container : applyFilter(TasksUiPlugin.getTaskListManager()
40
					.getTaskList()
42
					.getTaskList()
41
					.getRootElements())) {
43
					.getRootElements())) {
42
				for (ITask task : container.getChildren()) {
44
				for (ITask task : getAllTasks(container.getChildren())) {
43
					if (task.getOwner() != null && task.getSynchronizationState().isIncoming()) {
45
					if (task.getOwner() != null && task.getSynchronizationState().isIncoming()) {
44
						people.add(new Person(task.getOwner(), task.getConnectorKind(), task.getRepositoryUrl()));
46
						people.add(new Person(task.getOwner(), task.getConnectorKind(), task.getRepositoryUrl()));
45
					}
47
					}
Lines 49-54 Link Here
49
		return people.toArray();
51
		return people.toArray();
50
	}
52
	}
51
53
54
	private Set<ITask> getAllTasks(Collection<ITask> children) {
55
		if (children != null) {
56
			Set<ITask> alltasks = new HashSet<ITask>(children);
57
58
			for (ITask task : children) {
59
				if (task instanceof AbstractTask) {
60
					Set<ITask> childTasks = getAllTasks(((AbstractTask) task).getChildren());
61
					if (childTasks != null) {
62
						alltasks.addAll(childTasks);
63
					}
64
				}
65
			}
66
			return alltasks;
67
		}
68
		return null;
69
	}
70
52
	@Override
71
	@Override
53
	public Object[] getChildren(Object parent) {
72
	public Object[] getChildren(Object parent) {
54
		Set<ITask> children = new HashSet<ITask>();
73
		Set<ITask> children = new HashSet<ITask>();
Lines 56-62 Link Here
56
			for (ITaskContainer container : applyFilter(TasksUiPlugin.getTaskListManager()
75
			for (ITaskContainer container : applyFilter(TasksUiPlugin.getTaskListManager()
57
					.getTaskList()
76
					.getTaskList()
58
					.getRootElements())) {
77
					.getRootElements())) {
59
				for (ITask task : container.getChildren()) {
78
				for (ITask task : getAllTasks(container.getChildren())) {
60
					if (task.getOwner() != null && task.getOwner().equals(((Person) parent).getHandleIdentifier())
79
					if (task.getOwner() != null && task.getOwner().equals(((Person) parent).getHandleIdentifier())
61
							&& task.getSynchronizationState().isIncoming()) {
80
							&& task.getSynchronizationState().isIncoming()) {
62
						children.add(task);
81
						children.add(task);

Return to bug 233999