X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fcore%2Ftest%2Ftree%2FTreeTestResult.java;h=96d0db046509e4ab5e356e85e309c7097ddf0545;hb=8c69c342c923aff75e3cc53afe390b767bb81e2e;hp=9b807c904be55023d0ab614273c3a442c51e629d;hpb=62e442adb36b006627b17061864dfa4edde0a99a;p=gpl%2Fargeo-slc.git diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/TreeTestResult.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/TreeTestResult.java index 9b807c904..96d0db046 100644 --- a/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/TreeTestResult.java +++ b/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/TreeTestResult.java @@ -24,10 +24,11 @@ import org.argeo.slc.core.test.TestRunAware; * Complex implementation of a test result compatible with a tree based * structure. */ -public class TreeTestResult implements TestResult, StructureAware { +public class TreeTestResult implements TestResult, StructureAware, + Comparable { private Log log = LogFactory.getLog(TreeTestResult.class); - private List listeners = new Vector(); + private List> listeners = new Vector>(); private TreeSPath currentPath; private TestRun currentTestRun; @@ -42,7 +43,7 @@ public class TreeTestResult implements TestResult, StructureAware { private SortedMap elements = new TreeMap(); /** Sets the list of listeners. */ - public void setListeners(List listeners) { + public void setListeners(List> listeners) { this.listeners = listeners; } @@ -62,7 +63,7 @@ public class TreeTestResult implements TestResult, StructureAware { // notify listeners synchronized (listeners) { - for (TestResultListener listener : listeners) { + for (TestResultListener listener : listeners) { listener.resultPartAdded(this, part); } } @@ -112,7 +113,7 @@ public class TreeTestResult implements TestResult, StructureAware { closeDate = new Date(); synchronized (listeners) { - for (TestResultListener listener : listeners) { + for (TestResultListener listener : listeners) { listener.close(this); } listeners.clear(); @@ -166,6 +167,18 @@ public class TreeTestResult implements TestResult, StructureAware { public TestRun getCurrentTestRun() { return currentTestRun; } - - + + public int compareTo(TreeTestResult ttr2) { + TreeTestResult ttr1 = this; + if (ttr1.getCloseDate() != null && ttr2.getCloseDate() != null) { + return -ttr1.getCloseDate().compareTo(ttr2.getCloseDate()); + } else if (ttr1.getCloseDate() != null && ttr2.getCloseDate() == null) { + return 1; + } else if (ttr1.getCloseDate() == null && ttr2.getCloseDate() != null) { + return -1; + } else { + return ttr1.getUuid().compareTo(ttr2.getUuid()); + } + } + }