[
https://issues.apache.org/jira/browse/LANG-482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12917496#action_12917496
]
Rob Walker commented on LANG-482:
---------------------------------
Nice one Oliver, well done. Sorry you beat me to this - been on my "when I get
time" list for ages, but I never have any time!
Will either give the patch a try here in our local install at some stage or
update our install to latest codebase if it gets accepted and merged in before
then.
Not sure it matters to us either way on constructor vs setter/getter approach -
as long as we can enable the nesting option when used in Commons Config somehow.
> Enhance StrSubstitutor to support nested ${var-${subvr}} expansion
> ------------------------------------------------------------------
>
> Key: LANG-482
> URL: https://issues.apache.org/jira/browse/LANG-482
> Project: Commons Lang
> Issue Type: Improvement
> Components: lang.text.*
> Reporter: Rob Walker
> Priority: Minor
> Fix For: 3.1
>
> Attachments: lang-482.diff, StrSubstitutor.java.nested.patch
>
>
> t would be really handy of StrSubstitutor could support nested variable
> interpolation:
> org.osgi.framework.system.packages=org.osgi.framework; version=1.4.0, \
> org.osgi.service.packageadmin; version=1.2.0, \
> org.osgi.service.startlevel; version=1.1.0, \
> org.osgi.service.url; version=1.0.0, \
> org.osgi.util.tracker; version=1.3.3 \
> ${jre-${java.specification.version}}
> The process being to expand innermost variable references first and work
> outwards - this allows for very advance config, such as the above, which can
> dynamically detect the Java version and expand a JRE version specific
> property into the property being defined.
> Looking at the implementation, it seems it might be a fairly straightforward
> enhancement to:
> private int substitute(StrBuilder buf, int offset, int length, List
> priorVariables)
> The code already has the cyclic map in place.
> I already have code that achieves this within Apache Felix, so I will see if
> I can retro-fit a similar model to the above and if so submit a patch.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.