org.apache.commons.digester.substitution

Class MultiVariableExpander

Implemented Interfaces:
VariableExpander

public class MultiVariableExpander
extends java.lang.Object
implements VariableExpander

Expands variable references from multiple sources.

Since:
1.6

Field Summary

private ArrayList
markers
private int
nEntries
private ArrayList
sources

Constructor Summary

MultiVariableExpander()

Method Summary

void
addSource(String marker, Map source)
String
expand(String param)
String
expand(String str, String marker, Map source)
Replace any occurrences within the string of the form "marker{key}" with the value from source[key].

Field Details

markers

private ArrayList markers


nEntries

private int nEntries


sources

private ArrayList sources

Constructor Details

MultiVariableExpander

public MultiVariableExpander()

Method Details

addSource

public void addSource(String marker,
                      Map source)


expand

public String expand(String param)
Specified by:
expand in interface VariableExpander


expand

public String expand(String str,
                     String marker,
                     Map 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).


Copyright 2001-2005 The Apache Software Foundation.