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

Gary Gregory updated TEXT-171:
------------------------------
    Description: 
Internally, the class 
{{org.apache.commons.text.lookup.InterpolatorStringLookup}} normalizes its 
string lookup map with lower-case keys. The goal probably to make keys cases 
insensitive so you can say "${env:USER}" or "${ENV:USER}" or "${Env:USER}".

The method 
{{org.apache.commons.text.lookup.StringLookupFactory.addDefaultStringLookups(Map<String,
 StringLookup>)}} does not convert keys to lower case before adding entries to 
the string lookup map such that string look ups are not found when resolving 
variables.

This means that string lookup keys like "resourceBundle" that are _mixed_ case 
strings are not found and therefore not applied.

The list of keys that are not applied is:
 * base64Decoder
 * base64Encoder
 * resourceBundle
 * urlDecoder
 * urlEncoder

 

  was:
The method 
{{org.apache.commons.text.lookup.StringLookupFactory.addDefaultStringLookups(Map<String,
 StringLookup>)}} does not convert keys to lower case before adding entries to 
the string lookup map such that string look ups are not found when resolving 
variables.

This means that string lookup keys like "resourceBundle" that are _mixed_ case 
strings are not found and therefore not applied.

The list of keys that are not applied is:
 * base64Decoder
 * base64Encoder
 * resourceBundle
 * urlDecoder
 * urlEncoder

 


> StringLookupFactory.addDefaultStringLookups(Map<String, StringLookup>) does 
> not convert keys to lower case
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: TEXT-171
>                 URL: https://issues.apache.org/jira/browse/TEXT-171
>             Project: Commons Text
>          Issue Type: Bug
>            Reporter: Gary Gregory
>            Assignee: Gary Gregory
>            Priority: Major
>
> Internally, the class 
> {{org.apache.commons.text.lookup.InterpolatorStringLookup}} normalizes its 
> string lookup map with lower-case keys. The goal probably to make keys cases 
> insensitive so you can say "${env:USER}" or "${ENV:USER}" or "${Env:USER}".
> The method 
> {{org.apache.commons.text.lookup.StringLookupFactory.addDefaultStringLookups(Map<String,
>  StringLookup>)}} does not convert keys to lower case before adding entries 
> to the string lookup map such that string look ups are not found when 
> resolving variables.
> This means that string lookup keys like "resourceBundle" that are _mixed_ 
> case strings are not found and therefore not applied.
> The list of keys that are not applied is:
>  * base64Decoder
>  * base64Encoder
>  * resourceBundle
>  * urlDecoder
>  * urlEncoder
>  



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to