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 2016/03/28 17:28:08 UTC

svn commit: r1736895 - in /uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main: java/org/apache/uima/ducc/ws/server/ webapp/root/

Author: degenaro
Date: Mon Mar 28 15:28:08 2016
New Revision: 1736895

URL: http://svn.apache.org/viewvc?rev=1736895&view=rev
Log:
UIMA-4815 DUCC Web Server (WS) System Classes page re-imagined

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAbstractHandler.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.classes.jsp

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAbstractHandler.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAbstractHandler.java?rev=1736895&r1=1736894&r2=1736895&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAbstractHandler.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAbstractHandler.java Mon Mar 28 15:28:08 2016
@@ -32,6 +32,7 @@ import javax.servlet.http.HttpServletReq
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang.exception.ExceptionUtils;
+import org.apache.uima.ducc.common.NodeConfiguration;
 import org.apache.uima.ducc.common.NodeIdentity;
 import org.apache.uima.ducc.common.SizeBytes;
 import org.apache.uima.ducc.common.boot.DuccDaemonRuntimeProperties;
@@ -39,6 +40,8 @@ import org.apache.uima.ducc.common.boot.
 import org.apache.uima.ducc.common.internationalization.Messages;
 import org.apache.uima.ducc.common.utils.DuccLogger;
 import org.apache.uima.ducc.common.utils.DuccLoggerComponents;
+import org.apache.uima.ducc.common.utils.DuccPropertiesResolver;
+import org.apache.uima.ducc.common.utils.SystemPropertyResolver;
 import org.apache.uima.ducc.common.utils.TimeStamp;
 import org.apache.uima.ducc.common.utils.Utils;
 import org.apache.uima.ducc.common.utils.id.DuccId;
@@ -1135,4 +1138,32 @@ public abstract class DuccAbstractHandle
 		return sb;
 	}
 	
+	protected NodeConfiguration getNodeConfiguration() {
+		String methodName = "getNodeConfiguration";
+		NodeConfiguration nc = null;
+		try {
+			String class_definitions = SystemPropertyResolver.getStringProperty(DuccPropertiesResolver.ducc_rm_class_definitions, "scheduler.classes");
+			String user_registry = SystemPropertyResolver.getStringProperty(DuccPropertiesResolver.ducc_rm_user_registry, "ducc.users");
+			class_definitions = System.getProperty("DUCC_HOME") + "/resources/" + class_definitions;
+			nc = new NodeConfiguration(class_definitions, null, user_registry, duccLogger);        // UIMA-4142 make the config global
+			nc.readConfiguration();
+		}
+		catch(Exception e) {
+			duccLogger.error(methodName, jobid, e);
+		}
+		return nc;
+	}
+	
+	protected int getQuantum(NodeConfiguration nc, String class_name) {
+		String methodName = "getQuantum";
+		int quantum = SystemPropertyResolver.getIntProperty("ducc.rm.share.quantum", 0);
+		try {
+			quantum = nc.getQuantumForClass(class_name);
+		}
+		catch(Exception e) {
+			duccLogger.error(methodName, jobid, e);
+		}
+		return quantum;
+	}
+	
 }

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java?rev=1736895&r1=1736894&r2=1736895&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java Mon Mar 28 15:28:08 2016
@@ -1221,6 +1221,8 @@ public class DuccHandlerClassic extends
 		StringBuffer sb = new StringBuffer();
 		String val = null;
         
+		NodeConfiguration nc = getNodeConfiguration();
+		
 		DuccSchedulerClasses schedulerClasses = DuccSchedulerClasses.getInstance();
         Map<String, DuccProperties> clmap = schedulerClasses.getClasses();
 		if ( clmap != null ) {
@@ -1250,6 +1252,11 @@ public class DuccHandlerClassic extends
 				sb.append(policy);
 				sb.append("</td>");	
 				
+				// Quantum
+				sb.append("<td align=\"right\">");
+				sb.append(getQuantum(nc,class_name));
+				sb.append("</td>");	
+				
 				// Weight
 				sb.append("<td align=\"right\">");
 				sb.append(cl.getStringProperty("weight", "-"));

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java?rev=1736895&r1=1736894&r2=1736895&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java Mon Mar 28 15:28:08 2016
@@ -1753,6 +1753,8 @@ public class DuccHandlerJsonFormat exten
 		
         String val = null;
         
+        NodeConfiguration nc = getNodeConfiguration();
+		
 		if( clmap != null ) {
             DuccProperties[] class_set = clmap.values().toArray(new DuccProperties[clmap.size()]);
             Arrays.sort(class_set, new NodeConfiguration.ClassSorter());            
@@ -1768,6 +1770,9 @@ public class DuccHandlerJsonFormat exten
 				// Policy
                 String policy = cl.getProperty("policy");
                 row.add(new JsonPrimitive(policy));
+                // Quantum
+                int quantum = getQuantum(nc,class_name);
+                row.add(new JsonPrimitive(quantum));
                 // Weight
                 String weight = cl.getStringProperty("weight", "-");
                 row.add(new JsonPrimitive(weight));

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.classes.jsp
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.classes.jsp?rev=1736895&r1=1736894&r2=1736895&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.classes.jsp (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.classes.jsp Mon Mar 28 15:28:08 2016
@@ -42,6 +42,7 @@ if (table_style.equals("scroll")) {
                              		$('td:eq(3)' , nRow).css( "text-align", "right" );
                              		$('td:eq(4)' , nRow).css( "text-align", "right" );
                              		$('td:eq(5)' , nRow).css( "text-align", "right" );
+                             		$('td:eq(6)' , nRow).css( "text-align", "right" );
                              		return nRow;
 			},
 		} );
@@ -99,6 +100,7 @@ if (table_style.equals("scroll")) {
 	<th align="left">Name</th>
 	<th align="left">Nodepool</th>
 	<th align="left">Policy</th>
+	<th align="left">Quantum</th>
 	<th align="left">Weight</th>
 	<th align="left">Priority</th>
 	<th align="left" title="corresponding non-preemptable specific [or default] class name, if any">Non-preemptable Class</th>
@@ -123,6 +125,7 @@ if (table_style.equals("classic")) {
 			<th align="left">Name</th>
 			<th align="left">Nodepool</th>
 			<th align="left">Policy</th>
+			<th align="left">Quantum</th>
 			<th align="left">Weight</th>
 			<th align="left">Priority</th>
 			<th align="left" title="corresponding non-preemptable specific [or default] class name, if any">Non-preemptable Class</th>