Uploaded image for project: 'Commons Configuration'
  1. Commons Configuration
  2. CONFIGURATION-363

Consider enhancing to allow nested variable interpolation

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.7
    • Component/s: Interpolation
    • Labels:
      None

      Description

      It would be really handy of Commons Configuration 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.

      Care is needed to avoid recursion, which can been handled through use of a "Cycle Map" that detects of an inner variable has already been referenced.

      An example of this can be found in the substVars method of the Apache Felix org.apache.felix.framework.util.Util class.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                oheger Oliver Heger
                Reporter:
                walkerr Rob Walker
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: