You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by bu...@apache.org on 2016/01/18 14:33:59 UTC

svn commit: r1725267 - in /uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline: ACommandLine.java JavaCommandLine.java

Author: burn
Date: Mon Jan 18 13:33:59 2016
New Revision: 1725267

URL: http://svn.apache.org/viewvc?rev=1725267&view=rev
Log:
UIMA-4759 Replace  with the os.arch when launching processes

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/ACommandLine.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/JavaCommandLine.java

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/ACommandLine.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/ACommandLine.java?rev=1725267&r1=1725266&r2=1725267&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/ACommandLine.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/ACommandLine.java Mon Jan 18 13:33:59 2016
@@ -23,6 +23,7 @@ import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Map.Entry;
 
 import org.apache.uima.ducc.common.utils.Utils;
 
@@ -64,6 +65,11 @@ public abstract class ACommandLine imple
 		environment.putAll(env);
 	}
 	public Map<String,String> getEnvironment() {
+	  String osArch = System.getProperty("os.arch");
+	  // Replace the reserved DUCC variable with the architecture of this node (ppc64 or amd64 or  ...)
+	  for (Entry<String, String> ent : environment.entrySet()) {
+	    ent.setValue(ent.getValue().replace("${DUCC_OS_ARCH}",  osArch));
+	  }
 		return environment;
 	}
 	public void setWorkingDirectory(String workingDirectory) {

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/JavaCommandLine.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/JavaCommandLine.java?rev=1725267&r1=1725266&r2=1725267&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/JavaCommandLine.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/cmdline/JavaCommandLine.java Mon Jan 18 13:33:59 2016
@@ -43,19 +43,23 @@ public class JavaCommandLine extends ACo
 	}
 	public String[] getCommandLine() {
 		String[] os = new String[options.size()];
-		String[] args = new String[super.args.size()];
-		if ( super.args == null || super.args.size() == 0 ) {
-			return super.concatAllArrays(
-					options.toArray(os), new String[] { "-classpath",classpath,
-					className });
+		String[] result;
+		if ( args == null || args.size() == 0 ) {
+      result = concatAllArrays(options.toArray(os), new String[] { "-classpath", classpath, className });
 		} else {
-			return super.concatAllArrays(
-					options.toArray(os), new String[] { "-classpath",classpath,
-					className }, super.args.toArray(args));
+      String[] arguments = new String[args.size()];
+      result = concatAllArrays(options.toArray(os), new String[] { "-classpath", classpath, className },
+              args.toArray(arguments));
 		}
+		// Replace the reserved DUCC variable with the architecture of this node (ppc64 or amd64 or ...)
+		String osArch = System.getProperty("os.arch");
+		for (int i = 0; i < result.length; ++i) {
+		  result[i] = result[i].replace("${DUCC_OS_ARCH}",  osArch);
+		}
+		return result;
 	}
 
-	public String getCommand() {
+  public String getCommand() {
 		String retVal = "";
 		for(String part : getCommandLine()) {
 			retVal += " "+part;