commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benedikt Ritter (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (LANG-1055) StrSubstitutor.replaceSystemProperties does not work constistently
Date Thu, 22 Jan 2015 07:43:34 GMT

     [ https://issues.apache.org/jira/browse/LANG-1055?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Benedikt Ritter updated LANG-1055:
----------------------------------
    Fix Version/s: Review Patch

Setting this to review patch. I'll try to have a look soon.

> StrSubstitutor.replaceSystemProperties does not work constistently
> ------------------------------------------------------------------
>
>                 Key: LANG-1055
>                 URL: https://issues.apache.org/jira/browse/LANG-1055
>             Project: Commons Lang
>          Issue Type: Bug
>          Components: lang.text.*
>    Affects Versions: 3.3.2
>         Environment: Windows 7, Java 7
>            Reporter: Phil Dicke
>             Fix For: Review Patch
>
>
> StrSubsitutor caches a references to SystemProperties statically on first class references.
 This does not work properly with System.setProperties().  For example the following code:
> {code}
> package test.utilities;
> import java.util.Properties;
> import org.apache.commons.lang.text.StrSubstitutor;
> public class TestStrSubstitutor {
>     public static void main(String[] args) {
>         System.out.println(StrSubstitutor.replaceSystemProperties("os.name=${os.name}"));
>         Properties testProps = new Properties();
>         testProps.put("test_key",  "test_value");
>         testProps.putAll(System.getProperties());
>         System.setProperties(testProps);
>         System.out.println(StrSubstitutor.replace("test_key=${test_key}", System.getProperties()));
>         System.out.println(StrSubstitutor.replaceSystemProperties("test_key=${test_key}"));
>     }
> }
> {code}
> produces the following output:
> {code}
> os.name=Windows 7
> test_key=test_value
> test_key=${test_key}
> {code}
> The code linked here shows the static caching of the System Properties reference: http://commons.apache.org/proper/commons-lang/apidocs/src-html/org/apache/commons/lang3/text/StrLookup.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message