You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by fs...@apache.org on 2020/06/26 14:58:58 UTC

[tomcat] 01/03: Allow recursive substitution of properties.

This is an automated email from the ASF dual-hosted git repository.

fschumacher pushed a commit to branch pr309-recursion
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit 4f1ae64882486eeb0b60f9daf13daeca5df6b7c9
Author: Jean-Frederic Clere <jf...@gmail.com>
AuthorDate: Fri Jun 26 09:50:09 2020 +0200

    Allow recursive substitution of properties.
---
 java/org/apache/tomcat/util/IntrospectionUtils.java | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/java/org/apache/tomcat/util/IntrospectionUtils.java b/java/org/apache/tomcat/util/IntrospectionUtils.java
index 78ab66f..977d33a 100644
--- a/java/org/apache/tomcat/util/IntrospectionUtils.java
+++ b/java/org/apache/tomcat/util/IntrospectionUtils.java
@@ -332,7 +332,15 @@ public final class IntrospectionUtils {
         }
         if (prev < value.length())
             sb.append(value.substring(prev));
-        return sb.toString();
+        String newval = sb.toString();
+        if (newval.indexOf('$') < 0) {
+            return newval;
+        }
+        if (newval.equals(value))
+            return value;
+        if (log.isDebugEnabled())
+            log.debug("IntrospectionUtils.replaceProperties iter on: " + newval);
+        return replaceProperties(newval, staticProp, dynamicProp, classLoader);
     }
 
     private static String getProperty(String name, Hashtable<Object, Object> staticProp,


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org