|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--org.writersforge.catalan.transform.BaseNodeProcessor
|
+--org.writersforge.catalan.transform.TextProcessor
|
+--org.writersforge.catalan.transform.VariableTextReplacer
A text processor which performs dynamic text replacement by looking up specially formatted variables and resolving them against a Map of variable names to text values. The variable markup defaults to UNIX shell-style "${variable}", but can be changed to other formats, for example Ant-style "@variable@".
The following processor will convert strings like "Hello, my name is %[firstname] %[lastname]." to "Hello, my name is Joe Smith."
Map lookup = new HashMap ();
lookup.put ("firstname", "Joe");
lookup.put ("lastname", "Smith");
NodeProcessor nameReplacer = new VariableTextReplacer (lookup);
nameReplacer.setStartToken ("%[");
nameReplacer.setEndToken ("]");
This processor accepts only String input, and produces only String output.
| Constructor Summary | |
VariableTextReplacer(java.util.Map lookup)
Creates a new instance of VariableTextReplacer. |
|
| Method Summary | |
protected java.util.List |
processText(java.lang.String text)
Processes the text node. |
void |
setEndToken(java.lang.String endToken)
Assigns the token used to end a variable. |
void |
setStartToken(java.lang.String startToken)
Assigns the token used to start a variable. |
void |
setSwallowUndefined(boolean swallowUndefined)
Determines the behavior for processing variables that aren't defined in lookup map. |
java.lang.String |
toString()
Convert this object to a String value. |
| Methods inherited from class org.writersforge.catalan.transform.TextProcessor |
processNode |
| Methods inherited from class org.writersforge.catalan.transform.BaseNodeProcessor |
addLeftover, end, getLeftovers, getNodes, start |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public VariableTextReplacer(java.util.Map lookup)
lookup - the variable lookup mapping| Method Detail |
public void setSwallowUndefined(boolean swallowUndefined)
By default, undefined variables are not swallowed.
swallowUndefined - false to pass undefs through untouched, or true
to delete thempublic void setStartToken(java.lang.String startToken)
startToken - starting token textpublic void setEndToken(java.lang.String endToken)
endToken - ending token textprotected java.util.List processText(java.lang.String text)
processText in class TextProcessortext - the text to process
public java.lang.String toString()
toString in class java.lang.Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||