You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jl...@apache.org on 2012/12/10 09:37:26 UTC

svn commit: r1419260 - /openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java

Author: jlmonteiro
Date: Mon Dec 10 08:37:25 2012
New Revision: 1419260

URL: http://svn.apache.org/viewvc?rev=1419260&view=rev
Log:
Fixing message interpolation when properties are overriden with System properties

Modified:
    openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java

Modified: openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java
URL: http://svn.apache.org/viewvc/openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java?rev=1419260&r1=1419259&r2=1419260&view=diff
==============================================================================
--- openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java (original)
+++ openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java Mon Dec 10 08:37:25 2012
@@ -23,6 +23,7 @@ import org.apache.openejb.tools.release.
 import java.io.File;
 import java.util.Iterator;
 import java.util.Map;
+import java.util.Properties;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
@@ -71,9 +72,9 @@ public class Release {
             builddir = public_html.getAbsolutePath();
         }
 
+        final Map<String, Object> map = map();
         final Options options = new Options(System.getProperties());
 
-        final Map<String, Object> map = map();
 
         boolean interpolating = true;
         while (interpolating) {
@@ -82,7 +83,7 @@ public class Release {
                 final Object value = options.get(entry.getKey(), entry.getValue());
 
                 final String raw = value.toString();
-                final String formatted = format(raw, map);
+                final String formatted = format(raw, map, options);
                 if (!raw.equals(formatted)) interpolating = true;
 
                 entry.setValue(formatted);
@@ -96,12 +97,12 @@ public class Release {
         }
     }
 
-    static String format(String input, Map<String, Object> map) {
+    static String format(String input, Map<String, Object> map, Options options) {
         Matcher matcher = PATTERN.matcher(input);
         StringBuffer buf = new StringBuffer();
         while (matcher.find()) {
             String key = matcher.group(2);
-            Object value = map.get(key);
+            Object value = options.get(key, map.get(key));
             if (value != null) {
                 try {
                     matcher.appendReplacement(buf, value.toString());