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 2015/04/02 15:24:13 UTC

svn commit: r1670905 - in /uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli: CliBase.java DuccJobSubmit.java

Author: burn
Date: Thu Apr  2 13:24:13 2015
New Revision: 1670905

URL: http://svn.apache.org/r1670905
Log:
UIMA-4322 Hide undefined placeholder warning if an always-propagated variable

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java?rev=1670905&r1=1670904&r2=1670905&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java Thu Apr  2 13:24:13 2015
@@ -26,7 +26,9 @@ import java.io.OutputStreamWriter;
 import java.lang.management.ManagementFactory;
 import java.net.InetAddress;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Iterator;
+import java.util.List;
 import java.util.Map;
 import java.util.Properties;
 import java.util.concurrent.CountDownLatch;
@@ -359,6 +361,15 @@ public abstract class CliBase
     void setOptions(IUiOption[] uiOpts) 
         throws Exception 
     {
+        // Find the environment variables that are always propagated
+        List<String> envNameList;
+        String envNames = DuccPropertiesResolver.get(DuccPropertiesResolver.ducc_environment_propagated);
+        if (envNames != null) {
+        	envNameList = Arrays.asList(envNames.split("\\s+"));
+        } else {
+        	envNameList = new ArrayList<String>(0);
+        }
+    	
     	Map<IUiOption, String> parsed = commandLine.allOptions();
         for (IUiOption opt : parsed.keySet() ) {
             String val = parsed.get(opt);
@@ -366,7 +377,7 @@ public abstract class CliBase
                 val = "";                        
             } else {
                 if (val.contains("${")) {
-                    val = resolvePlaceholders(val);
+                    val = resolvePlaceholders(val, envNameList);
                 }
             }
             val = val.trim();
@@ -418,8 +429,9 @@ public abstract class CliBase
     
     /*
      * Resolve any ${..} placeholders against user's system properties and environment
+     * 2.0: Leave unresolved entries as is & warn if not one of the always-propagated ones 
      */
-    private String resolvePlaceholders(String contents) {
+    private String resolvePlaceholders(String contents, List<String> envNameList) {
         //  Placeholders syntax ${<placeholder>} 
         Pattern pattern = Pattern.compile("\\$\\{(.*?)\\}");  // Stops on first '}'
         Matcher matcher = pattern.matcher(contents); 
@@ -437,7 +449,9 @@ public abstract class CliBase
             	matcher.appendReplacement(sb, "");   // Can't include the value as it looks like a group specification
             	value = "${" + key + "}";
             	sb.append(value);
-            	message("WARN: undefined placeholder", value, "not replaced");
+            	if (!envNameList.contains(key)) {
+            		message("WARN: undefined placeholder", value, "not replaced");
+            	}
             }
         }
         matcher.appendTail(sb);

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java?rev=1670905&r1=1670904&r2=1670905&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java Thu Apr  2 13:24:13 2015
@@ -369,8 +369,10 @@ public class DuccJobSubmit
             }
         }
         catch(Exception e) {
-            System.out.println("Cannot initialize: ");
-            e.printStackTrace();
+            System.out.println("Cannot initialize: " + e.getMessage());
+            if (!(e instanceof IllegalArgumentException)) {
+            	e.printStackTrace();
+            }
             System.exit(1);
         }
     }