org.apache.commons.digester.substitution
public class MultiVariableExpander extends java.lang.Object implements VariableExpander
Expands variable references from multiple sources.
Modifier and Type | Field and Description |
---|---|
private java.util.ArrayList |
markers |
private int |
nEntries |
private java.util.ArrayList |
sources |
Constructor and Description |
---|
MultiVariableExpander() |
Modifier and Type | Method and Description |
---|---|
void |
addSource(java.lang.String marker,
java.util.Map source) |
java.lang.String |
expand(java.lang.String param)
Return the input string with any variables replaced by their
corresponding value.
|
java.lang.String |
expand(java.lang.String str,
java.lang.String marker,
java.util.Map source)
Replace any occurrences within the string of the form
"marker{key}" with the value from source[key].
|
private int nEntries
private java.util.ArrayList markers
private java.util.ArrayList sources
public void addSource(java.lang.String marker, java.util.Map source)
public java.lang.String expand(java.lang.String param)
VariableExpander
expand
in interface VariableExpander
public java.lang.String expand(java.lang.String str, java.lang.String marker, java.util.Map source)
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).
java.lang.IllegalArgumentException
- if the input param references
a variable which is not known to the specified source.Copyright 2001-2005 The Apache Software Foundation.