in uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/sort/JobDetailsProcesses.java [148:211]
public int compareTo(JobDetailsProcesses jdp) {
int retVal = 0;
try {
JobDetailsProcesses j1 = this;
JobDetailsProcesses j2 = jdp;
IDuccProcess p1 = j1.getProcess();
IDuccProcess p2 = j2.getProcess();
long f1 = p1.getDuccId().getFriendly();
long f2 = p2.getDuccId().getFriendly();
if(f1 != f2) {
if(!j1.isRunning() && j2.isRunning()) {
retVal = 1;
}
else if(j1.isRunning() && !j2.isRunning()) {
retVal = -1;
}
else if(!j1.isInitializing() && j2.isInitializing()) {
retVal = 1;
}
else if(j1.isInitializing() && !j2.isInitializing()) {
retVal = -1;
}
else if(!j1.isStarting() && j2.isStarting()) {
retVal = 1;
}
else if(j1.isStarting() && !j2.isStarting()) {
retVal = -1;
}
else if(!j1.isStopping() && j2.isStopping()) {
retVal = 1;
}
else if(j1.isStopping() && !j2.isStopping()) {
retVal = -1;
}
else if(!j1.isFailed() && j2.isFailed()) {
retVal = 1;
}
else if(j1.isFailed() && !j2.isFailed()) {
retVal = -1;
}
else if(j1.workItemErrors() < j2.workItemErrors()) {
retVal = 1;
}
else if(j1.workItemErrors() > j2.workItemErrors()) {
retVal = -1;
}
else if(j1.workItemDone() < j2.workItemDone()) {
retVal = 1;
}
else if(j1.workItemDone() > j2.workItemDone()) {
retVal = -1;
}
else if(f1 > f2) {
retVal = -1;
}
else if(f1 < f2) {
retVal = 1;
}
}
}
catch(Exception e) {
}
return retVal;
}