You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2013/12/13 16:32:47 UTC
svn commit: r1550749 -
/uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/jd/files/WorkItemStateManager.java
Author: degenaro
Date: Fri Dec 13 15:32:46 2013
New Revision: 1550749
URL: http://svn.apache.org/r1550749
Log:
UIMA-2626 DUCC webserver (WS) Job Performance tab shows meaningless total for min/max
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/jd/files/WorkItemStateManager.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/jd/files/WorkItemStateManager.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/jd/files/WorkItemStateManager.java?rev=1550749&r1=1550748&r2=1550749&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/jd/files/WorkItemStateManager.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/jd/files/WorkItemStateManager.java Fri Dec 13 15:32:46 2013
@@ -19,6 +19,7 @@
package org.apache.uima.ducc.common.jd.files;
import java.io.IOException;
+import java.util.Map.Entry;
import java.util.concurrent.ConcurrentSkipListMap;
public class WorkItemStateManager {
@@ -146,4 +147,69 @@ public class WorkItemStateManager {
wis.setNode(node);
wis.setPid(pid);
}
+
+ public double getMin() {
+ double retVal = -1;
+ try {
+ for (Entry<Long, IWorkItemState> entry : map.entrySet()) {
+ IWorkItemState workItemState = entry.getValue();
+ switch(workItemState.getState()) {
+ case ended:
+ long millis = workItemState.getMillisProcessing();
+ if(millis < retVal) {
+ retVal = millis;
+ }
+ else if(retVal < 0) {
+ retVal = millis;
+ }
+ break;
+ }
+ }
+ }
+ catch(Throwable t) {
+ }
+ return retVal;
+ }
+
+ public double getMax() {
+ double retVal = -1;
+ try {
+ for (Entry<Long, IWorkItemState> entry : map.entrySet()) {
+ IWorkItemState workItemState = entry.getValue();
+ switch(workItemState.getState()) {
+ case ended:
+ long millis = workItemState.getMillisProcessing();
+ if(millis > retVal) {
+ retVal = millis;
+ }
+ break;
+ }
+ }
+ }
+ catch(Throwable t) {
+ }
+ return retVal;
+ }
+
+ public double getAvg() {
+ double retVal = 0;
+ try {
+ int count = 0;
+ for (Entry<Long, IWorkItemState> entry : map.entrySet()) {
+ IWorkItemState workItemState = entry.getValue();
+ switch(workItemState.getState()) {
+ case ended:
+ retVal += workItemState.getMillisProcessing();
+ count++;
+ break;
+ }
+ }
+ if(count > 0) {
+ retVal = retVal / count;
+ }
+ }
+ catch(Throwable t) {
+ }
+ return retVal;
+ }
}