Class VariableInterpolator
- java.lang.Object
-
- org.apache.wicket.util.string.interpolator.VariableInterpolator
-
- All Implemented Interfaces:
Serializable
,IClusterable
- Direct Known Subclasses:
MapVariableInterpolator
,PropertyVariableInterpolator
public abstract class VariableInterpolator extends Object implements IClusterable
Base class for variable interpolators. An interpolator substitutes values into aString
. So, a variable interpolator substitutes the values of one or more variables into aString
.The
String
to interpolate (substitute into) is passed to theVariableInterpolator
's constructor. Variables are denoted in this string by the syntax${variableName}
. A subclass provides an implementation for the abstract methodgetValue(String variableName)
. ThetoString()
method then performs an interpolation by replacing each variable of the form${variableName}
with the value returned bygetValue("variableName")
."$" is the escape char. Thus "$${text}" can be used to escape it (ignore interpretation). If '$3.24' is needed then '$$${amount}' should be used. The first $ sign escapes the second, and the third is used to interpolate the variable.
- Since:
- 1.2.6
- Author:
- Jonathan Locke
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description VariableInterpolator(String string)
Constructor.VariableInterpolator(String string, boolean exceptionOnNullVarValue)
Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract String
getValue(String variableName)
Retrieves a value for a variable name during interpolation.String
toString()
Interpolates using variables.
-
-
-
Constructor Detail
-
VariableInterpolator
public VariableInterpolator(String string)
Constructor.- Parameters:
string
- aString
to interpolate with variable values
-
VariableInterpolator
public VariableInterpolator(String string, boolean exceptionOnNullVarValue)
Constructor.- Parameters:
string
- aString
to interpolate with variable valuesexceptionOnNullVarValue
- iftrue
anIllegalStateException
will be thrown ifgetValue(String)
returnsnull
, otherwise the${varname}
string will be left in theString
so that multiple interpolators can be chained
-
-