public class VariableSubstitutor
extends java.lang.Object
implements java.io.Serializable
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
bracesRequired
Whether braces are required for substitution.
|
private static long |
serialVersionUID |
protected static int |
TYPE_AT
A constant for file type.
|
protected static int |
TYPE_JAVA_PROPERTIES
A constant for file type.
|
protected static int |
TYPE_PLAIN
A constant for file type.
|
protected static int |
TYPE_SHELL
A constant for file type.
|
protected static int |
TYPE_XML
A constant for file type.
|
protected static java.util.Map |
typeNameToConstantMap
A mapping of file type names to corresponding integer constants.
|
protected java.util.Properties |
variables
The variable value mappings
|
| Constructor and Description |
|---|
VariableSubstitutor(java.util.Properties variables)
Constructs a new substitutor using the specified variable value mappings.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
areBracesRequired()
Get whether this substitutor requires braces.
|
protected java.lang.String |
escapeSpecialChars(java.lang.String str,
int type)
Escapes the special characters in the specified string using file type specific rules.
|
protected int |
getTypeConstant(java.lang.String type)
Returns the internal constant for the specified file type.
|
void |
setBracesRequired(boolean braces)
Specify whether this substitutor requires braces.
|
int |
substitute(java.io.InputStream in,
java.io.OutputStream out,
java.lang.String type,
java.lang.String encoding)
Substitutes the variables found in the specified input stream.
|
int |
substitute(java.io.Reader reader,
java.io.Writer writer,
java.lang.String type)
Substitutes the variables found in the data read from the specified reader.
|
java.lang.String |
substitute(java.lang.String str,
java.lang.String type)
Substitutes the variables found in the specified string.
|
private static final long serialVersionUID
protected transient java.util.Properties variables
protected boolean bracesRequired
protected static final int TYPE_PLAIN
protected static final int TYPE_JAVA_PROPERTIES
protected static final int TYPE_XML
protected static final int TYPE_SHELL
protected static final int TYPE_AT
protected static final java.util.Map typeNameToConstantMap
public VariableSubstitutor(java.util.Properties variables)
variables - the map with variable value mappingspublic boolean areBracesRequired()
public void setBracesRequired(boolean braces)
public java.lang.String substitute(java.lang.String str,
java.lang.String type)
throws java.lang.IllegalArgumentException
str - the string to check for variablestype - the escaping type or null for plainjava.lang.IllegalArgumentException - if unknown escaping type specifiedpublic int substitute(java.io.InputStream in,
java.io.OutputStream out,
java.lang.String type,
java.lang.String encoding)
throws java.lang.IllegalArgumentException,
java.io.UnsupportedEncodingException,
java.io.IOException
in - the input stream to readout - the output stream to writetype - the file type or null for plainencoding - the character encoding or null for defaultjava.lang.IllegalArgumentException - if unknown file type specifiedjava.io.UnsupportedEncodingException - if encoding not supportedjava.io.IOException - if an I/O error occurspublic int substitute(java.io.Reader reader,
java.io.Writer writer,
java.lang.String type)
throws java.lang.IllegalArgumentException,
java.io.IOException
reader - the reader to readwriter - the writer used to write data outtype - the file type or null for plainjava.lang.IllegalArgumentException - if unknown file type specifiedjava.io.IOException - if an I/O error occursprotected int getTypeConstant(java.lang.String type)
type - the type name or null for plainprotected java.lang.String escapeSpecialChars(java.lang.String str,
int type)
str - the string to check for special characterstype - the target file type (one of TYPE_xxx)