|
Sonic ESB API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sonicsw.esb.service.common.util.variables.VariableParserImpl
public class VariableParserImpl
Default VariableParser
implementation that handles variables
of the form ${uri}
.
Constructor Summary | |
---|---|
VariableParserImpl()
|
Method Summary | |
---|---|
boolean |
containsVariables(java.lang.String content)
Returns true if the given content contains one or more variable tokens. |
VariableFactory.Variable |
getVariable(java.lang.String content)
Returns a Variable object for the given variable token. |
VariableIterator |
getVariableIterator(java.lang.String content)
Creates an iterator over variable and literal tokens in the given string content. |
VariableResolverFactory |
getVariableResolverFactory()
Gets the variable resolver factory used by this parser. |
boolean |
isVariable(java.lang.String content)
Returns true if the given content consists of exactly one variable token. |
java.lang.String |
replaceAllVariables(java.lang.String content)
Replaces all variables in the given string content. |
java.lang.String |
resolveVariable(java.lang.String token)
Resolves a single variable token, delegating to an appropriate VariableResolver . |
void |
setVariableResolverFactory(VariableResolverFactory resolverFactory)
Sets the variable resolver factory to use for this parser. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public VariableParserImpl()
Method Detail |
---|
public java.lang.String replaceAllVariables(java.lang.String content)
VariableParser
replaceAllVariables
in interface VariableParser
content
- string content to be examined
public boolean containsVariables(java.lang.String content)
VariableParser
containsVariables
in interface VariableParser
content
- string content to be examined
public boolean isVariable(java.lang.String content)
VariableParser
isVariable
in interface VariableParser
content
- string content to be examined
public VariableIterator getVariableIterator(java.lang.String content)
VariableParser
VariableParser.resolveVariable(String)
to implement custom variable
substitution logic.
For example, the following approach could be used to only resolve a subset of the variables in a string:
VariableIterator iter = parser.createIterator(content); StringBuffer result = new StringBuffer(); while (iter.hasNext()) { String token = (String) iter.next(); if (iter.wasLastTokenVariable() && shouldResolve(token)) { String value = parser.resolveVariable(token); result.append(value); } else { // don't resolve this variable result.append(token); } }
getVariableIterator
in interface VariableParser
content
- string content to iterate over
public java.lang.String resolveVariable(java.lang.String token)
VariableParser
VariableResolver
. Note that the result may be null.
resolveVariable
in interface VariableParser
token
- variable token to be resolved
public VariableFactory.Variable getVariable(java.lang.String content)
VariableParser
Variable
object for the given variable token.
Returns null if no appropriate resolver can be found or if the resolver
does not implement VariableFactory
.
This method is intended for tools support. The resulting
Variable
object must be cast to a concrete type to be of
any use.
getVariable
in interface VariableParser
Variable
, or nullpublic void setVariableResolverFactory(VariableResolverFactory resolverFactory)
VariableParser
setVariableResolverFactory
in interface VariableParser
resolverFactory
- a variable resolver factorypublic VariableResolverFactory getVariableResolverFactory()
VariableParser
getVariableResolverFactory
in interface VariableParser
|
Sonic ESB API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |