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/01/30 20:17:06 UTC

svn commit: r1440593 - in /uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main: java/org/apache/uima/ducc/ws/server/DuccAsUser.java java/org/apache/uima/ducc/ws/server/DuccHandler.java webapp/root/js/ducc.js webapp/root/submit.reservation.jsp

Author: degenaro
Date: Wed Jan 30 19:17:05 2013
New Revision: 1440593

URL: http://svn.apache.org/viewvc?rev=1440593&view=rev
Log:
UIMA-2625 DUCC webserver (WS) should provide "wait for result" option for Request Reservation dialog

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAsUser.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/js/ducc.js
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/submit.reservation.jsp

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAsUser.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAsUser.java?rev=1440593&r1=1440592&r2=1440593&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAsUser.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccAsUser.java Wed Jan 30 19:17:05 2013
@@ -26,6 +26,7 @@ import java.util.Map;
 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.Utils;
 
 
@@ -36,7 +37,7 @@ public class DuccAsUser {
 	
 	public static String magicString = "1001 Command launching...";
 	
-	public static String duckling(String[] args) {
+	public static String duckling(String user, String[] args) {
 		
 		String methodName = "duckling";
 		
@@ -79,6 +80,13 @@ public class DuccAsUser {
 		
 		env.put("JobId", "webserver");
 		
+		String runmode = DuccPropertiesResolver.getInstance().getProperty(DuccPropertiesResolver.ducc_runmode);
+		if(runmode != null) {
+			if(runmode.equals("Test")) {
+				env.put("USER", user);
+			}
+		}
+		
 		try {
 			Process process = pb.start();
 			String line;
@@ -89,7 +97,7 @@ public class DuccAsUser {
 			while ((line = bri.readLine()) != null) {
 				duccLogger.info(methodName, null, "stdout: "+line);
 				if(trigger) {
-					retVal.append(line);
+					retVal.append(line+"\n");
 				}
 				if(line.startsWith(magicString)) {
 					duccLogger.trace(methodName, null, "magic!");

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java?rev=1440593&r1=1440592&r2=1440593&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java Wed Jan 30 19:17:05 2013
@@ -2131,7 +2131,7 @@ public class DuccHandler extends DuccAbs
 		if(isAuthenticated(request,response)) {
 			disabled = "";
 		}
-		String button = "<input type=\"button\" onclick=\"ducc_submit_reservation()\" value=\"Submit\" "+disabled+"/>";
+		String button = "<input id=\"submit_button\" type=\"button\" onclick=\"ducc_submit_reservation()\" value=\"Submit\" "+disabled+"/>";
 		sb.append(button);
 		response.getWriter().println(sb);
 		duccLogger.trace(methodName, null, messages.fetch("exit"));
@@ -2277,13 +2277,13 @@ public class DuccHandler extends DuccAbs
 					case Administrator:
 						String arg3 = "--"+SpecificationProperties.key_role_administrator;
 						String[] arglistAdministrator = { "-u", userId, "--", jhome+java, "-cp", cp, jclass, arg1, arg2, arg3 };
-						result = DuccAsUser.duckling(arglistAdministrator);
+						result = DuccAsUser.duckling(userId, arglistAdministrator);
 						response.getWriter().println(result);
 						break;
 					case User:
 					default:
 						String[] arglistUser = { "-u", userId, "--", jhome+java, "-cp", cp, jclass, arg1, arg2 };
-						result = DuccAsUser.duckling(arglistUser);
+						result = DuccAsUser.duckling(userId, arglistUser);
 						response.getWriter().println(result);
 						break;	
 					}
@@ -2352,7 +2352,8 @@ public class DuccHandler extends DuccAbs
 				String jclass = "org.apache.uima.ducc.cli.DuccReservationSubmit";
 				String jhome = System.getProperty("java.home");
 				String[] arglist = { "-u", userId, "--", jhome+java, "-cp", cp, jclass, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8 };
-				DuccAsUser.duckling(arglist);
+				String result = DuccAsUser.duckling(userId, arglist);
+				response.getWriter().println(result);
 			} catch (Exception e) {
 				duccLogger.error(methodName, null, e);
 			}
@@ -2392,13 +2393,13 @@ public class DuccHandler extends DuccAbs
 					case Administrator:
 						String arg3 = "--"+SpecificationProperties.key_role_administrator;
 						String[] arglistAdministrator = { "-u", userId, "--", jhome+java, "-cp", cp, jclass, arg1, arg2, arg3 };
-						result = DuccAsUser.duckling(arglistAdministrator);
+						result = DuccAsUser.duckling(userId, arglistAdministrator);
 						response.getWriter().println(result);
 						break;
 					case User:
 					default:
 						String[] arglistUser = { "-u", userId, "--", jhome+java, "-cp", cp, jclass, arg1, arg2 };
-						result = DuccAsUser.duckling(arglistUser);
+						result = DuccAsUser.duckling(userId, arglistUser);
 						response.getWriter().println(result);
 						break;	
 					}
@@ -2459,13 +2460,13 @@ public class DuccHandler extends DuccAbs
 						case Administrator:
 							String arg3 = "--"+SpecificationProperties.key_role_administrator;
 							String[] arglistAdministrator = { "-u", userId, "--", jhome+java, "-cp", cp, jclass, arg1, arg2, arg3 };
-							result = DuccAsUser.duckling(arglistAdministrator);
+							result = DuccAsUser.duckling(userId, arglistAdministrator);
 							response.getWriter().println(result);
 							break;
 						case User:
 						default:
 							String[] arglistUser = { "-u", userId, "--", jhome+java, "-cp", cp, jclass, arg1, arg2 };
-							result = DuccAsUser.duckling(arglistUser);
+							result = DuccAsUser.duckling(userId, arglistUser);
 							response.getWriter().println(result);
 							break;	
 						}

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/js/ducc.js
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/js/ducc.js?rev=1440593&r1=1440592&r2=1440593&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/js/ducc.js (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/js/ducc.js Wed Jan 30 19:17:05 2013
@@ -2109,18 +2109,42 @@ function ducc_submit_reservation()
 		var number_of_instances = e.options[e.selectedIndex].value;
 		var e = document.getElementById("description");
 		var description = e.value;
-		$.jGrowl(" Pending allocation...");
-		$.ajax(
-		{
-			type: 'POST',
-			url : "/ducc-servlet/reservation-submit-request",
-			data: {'scheduling_class':scheduling_class,'instance_memory_size':instance_memory_size,'instance_memory_units':instance_memory_units,'number_of_instances':number_of_instances,'description':description},
-			success : function (data) 
+		var e = document.getElementById("wait_for_result_yes");
+		var wait_for_result = e.checked;
+		if (wait_for_result) {
+			document.getElementById("working_area").style.display = 'block';
+			document.getElementById("submit_button").disabled = 'disabled';
+			
+			$.ajax(
 			{
-				setTimeout(function(){window.close();}, 5000);
-			}
-		});
-		setTimeout(function(){window.close();}, 5000);
+				type: 'POST',
+				async: false,
+				url : "/ducc-servlet/reservation-submit-request",
+				data: {'scheduling_class':scheduling_class,'instance_memory_size':instance_memory_size,'instance_memory_units':instance_memory_units,'number_of_instances':number_of_instances,'description':description},
+				success : function (data) 
+				{
+					$.jGrowl(data, { life: 15000 });
+					setTimeout(function(){window.close();}, 15000);
+				}
+			});
+			setTimeout(function(){window.close();}, 15000);
+			
+			document.getElementById("working_area").style.display = 'none';
+		}
+		else {
+			$.jGrowl(" Pending allocation...");
+			$.ajax(
+			{
+				type: 'POST',
+				url : "/ducc-servlet/reservation-submit-request",
+				data: {'scheduling_class':scheduling_class,'instance_memory_size':instance_memory_size,'instance_memory_units':instance_memory_units,'number_of_instances':number_of_instances,'description':description},
+				success : function (data) 
+				{
+					setTimeout(function(){window.close();}, 5000);
+				}
+			});
+			setTimeout(function(){window.close();}, 5000);
+		}
 	}
 	catch(err) {
 		ducc_error("ducc_submit_reservation",err);

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/submit.reservation.jsp
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/submit.reservation.jsp?rev=1440593&r1=1440592&r2=1440593&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/submit.reservation.jsp (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/submit.reservation.jsp Wed Jan 30 19:17:05 2013
@@ -122,6 +122,16 @@ under the License.
         <td align="left" ><span id="number_of_instances_area">
                           </span>
         <tr>
+        <td align="right">wait for result
+        <td align="right">
+        <td align="left" ><span id="wait_for_result_area">
+                          <table>
+                          <tr>
+                          <td align="left"><input type="radio"  id="wait_for_result_yes" name="wait_for_result" value="yes" checked /> Yes
+                          <td align="left"><input type="radio"  id="wait_for_result_no"  name="wait_for_result" value="no" /> No
+                          </table>
+                          </span>
+        <tr>
         <td align="right">
         <td align="right">
         <td align="left">
@@ -131,6 +141,12 @@ under the License.
                           </span>
         <td align="left" ><input type="button" onclick="ducc_cancel_submit_reservation()" value="Cancel" />
         </table>
+        <tr>
+        <td align="right"><span id="working_area" style="display:none;">
+        					<input type="image" title="Working..." alt="Working..." src="opensources/images/indicator.gif">
+                          </span>
+        <td align="right">
+        <td align="left" >
         </table>
    	  </div>
     </div>