ItEr48S04ValidacionEProbasFuncionaisItEr47S04: Adding is milestone property in order to avoid proxy problems checking if a task is a milestone
This commit is contained in:
parent
9e7c9627bb
commit
3355e7bab1
4 changed files with 36 additions and 8 deletions
|
|
@ -494,4 +494,9 @@ public class Task extends TaskElement {
|
|||
return canBeResized() && !isSubcontracted();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isMilestone() {
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -412,4 +412,6 @@ public abstract class TaskElement extends BaseEntity {
|
|||
return result;
|
||||
}
|
||||
|
||||
public abstract boolean isMilestone();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -105,21 +105,32 @@ public class TaskGroup extends TaskElement {
|
|||
}
|
||||
|
||||
public void setTaskChildrenTo(List<TaskElement> children) {
|
||||
int positionOnTaskElements = 0;
|
||||
for (int i = 0; i < children.size(); i++) {
|
||||
TaskElement element = children.get(i);
|
||||
if (i >= taskElements.size()) {
|
||||
if (positionOnTaskElements >= taskElements.size()) {
|
||||
taskElements.add(element);
|
||||
} else {
|
||||
taskElements.set(i, element);
|
||||
while (positionOnTaskElements < taskElements.size()
|
||||
&& taskElements.get(positionOnTaskElements)
|
||||
.isMilestone()) {
|
||||
positionOnTaskElements++;
|
||||
}
|
||||
if (positionOnTaskElements >= taskElements.size()) {
|
||||
taskElements.add(element);
|
||||
} else {
|
||||
taskElements.set(positionOnTaskElements, element);
|
||||
}
|
||||
}
|
||||
positionOnTaskElements++;
|
||||
}
|
||||
if (children.size() < taskElements.size()) {
|
||||
ListIterator<TaskElement> listIterator = taskElements
|
||||
.listIterator(children.size());
|
||||
do {
|
||||
listIterator.next();
|
||||
ListIterator<TaskElement> listIterator = taskElements
|
||||
.listIterator(positionOnTaskElements);
|
||||
while (listIterator.hasNext()) {
|
||||
TaskElement current = listIterator.next();
|
||||
if (!current.isMilestone()) {
|
||||
listIterator.remove();
|
||||
} while (listIterator.hasNext());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -147,4 +158,9 @@ public class TaskGroup extends TaskElement {
|
|||
public boolean canBeExplicitlyResized() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isMilestone() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -124,4 +124,9 @@ public class TaskMilestone extends TaskElement {
|
|||
public boolean canBeExplicitlyResized() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isMilestone() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue