Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam Davis2014-04-30 23:28:14 +0000
committerSam Davis2014-05-08 20:19:54 +0000
commitdc89720c44f6cfcd6e127bc0fad5c2da9cb965d0 (patch)
tree83108c77b6283b7c6e244822e7f319fc49fcf816 /org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core
parent5fa632424ac4a18d6ccf0cbfa806127d36e902a3 (diff)
downloadorg.eclipse.mylyn.tasks-dc89720c44f6cfcd6e127bc0fad5c2da9cb965d0.tar.gz
org.eclipse.mylyn.tasks-dc89720c44f6cfcd6e127bc0fad5c2da9cb965d0.tar.xz
org.eclipse.mylyn.tasks-dc89720c44f6cfcd6e127bc0fad5c2da9cb965d0.zip
385670: allow connector clients to choose whether subtasks
should be returned by queries Change-Id: I796006923fe6c61f6eb9f290d08452fe67348ef6 Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=385670
Diffstat (limited to 'org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core')
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskRelation.java18
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/SynchronizationJob.java19
2 files changed, 35 insertions, 2 deletions
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskRelation.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskRelation.java
index 14fb166f5..0cfc3b6d0 100644
--- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskRelation.java
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/data/TaskRelation.java
@@ -91,6 +91,20 @@ public class TaskRelation {
return new TaskRelation(Kind.DEPENDENCY, direction, taskId);
}
+ /**
+ * @since 3.12
+ */
+ public boolean isParentRelation() {
+ return kind == Kind.CONTAINMENT && direction == Direction.INWARD;
+ }
+
+ /**
+ * @since 3.12
+ */
+ public boolean isChildRelation() {
+ return kind == Kind.CONTAINMENT && direction == Direction.OUTWARD;
+ }
+
@Override
public int hashCode() {
final int prime = 31;
@@ -118,9 +132,9 @@ public class TaskRelation {
@Override
public String toString() {
- if (kind == Kind.CONTAINMENT && direction == Direction.INWARD) {
+ if (isParentRelation()) {
return Messages.TaskRelation_Parent;
- } else if (kind == Kind.CONTAINMENT && direction == Direction.OUTWARD) {
+ } else if (isChildRelation()) {
return Messages.TaskRelation_Subtask;
} else {
return Messages.TaskRelation_Dependency;
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/SynchronizationJob.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/SynchronizationJob.java
index 4cc00d282..2d1677f04 100644
--- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/SynchronizationJob.java
+++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/sync/SynchronizationJob.java
@@ -31,6 +31,8 @@ public abstract class SynchronizationJob extends Job {
*/
protected final IDelegatingProgressMonitor monitor;
+ private boolean fetchSubtasks = true;
+
/**
* @since 3.0
*/
@@ -68,4 +70,21 @@ public abstract class SynchronizationJob extends Job {
public IDelegatingProgressMonitor getMonitor() {
return monitor;
}
+
+ /**
+ * Specify whether subtasks should be fetched as part of task synchronization. Defaults to true.
+ *
+ * @since 3.12
+ */
+ public void setFetchSubtasks(boolean fetchSubtasks) {
+ this.fetchSubtasks = fetchSubtasks;
+ }
+
+ /**
+ * @return whether subtasks should be fetched as part of task synchronization
+ * @since 3.12
+ */
+ public boolean getFetchSubtasks() {
+ return fetchSubtasks;
+ }
}

Back to the top