Class MultiVariableExpander

java.lang.Object
org.apache.commons.digester3.substitution.MultiVariableExpander
All Implemented Interfaces:
VariableExpander

public class MultiVariableExpander extends Object implements VariableExpander

Expands variable references from multiple sources.

Since:
1.6
  • Field Details

  • Constructor Details

    • MultiVariableExpander

      public MultiVariableExpander()
  • Method Details

    • addSource

      public void addSource(String marker, Map<String,Object> source)
      Add a new variables source, identified by the input marker
      Parameters:
      marker - The input variables marker
      source - The variables source
    • expand

      public String expand(String param)
      Return the input string with any variables replaced by their corresponding value. If there are no variables in the string, then the input parameter is returned unaltered.
      Specified by:
      expand in interface VariableExpander
      Parameters:
      param - the string containing variables to be replaced.
      Returns:
      the input string with any variables replaced by their corresponding value.
    • expand

      public String expand(String str, String marker, Map<String,Object> source)
      Replace any occurrences within the string of the form "marker{key}" with the value from source[key].

      Commonly, the variable marker is "$", in which case variables are indicated by ${key} in the string.

      Returns the string after performing all substitutions.

      If no substitutions were made, the input string object is returned (not a copy).

      Parameters:
      str - The input string containing placeholders
      marker - The input variables marker
      source - The variables source
      Returns:
      The input string where variables have been expanded by replacing values found in source