|
Project Wonder 5.0 | |||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objecter.extensions.foundation.ERXSimpleTemplateParser
public class ERXSimpleTemplateParser
Very simple template parser. For example if you have the delimiter:
Properties | |
er.extensions.ERXSimpleTemplateParser.useOldDelimiter | if false, only @@ delimeters are supported (defaults to true) |
Field Summary | |
---|---|
static java.lang.String |
DEFAULT_DELIMITER
The default delimiter |
static java.lang.String |
DEFAULT_UNDEFINED_KEY_LABEL
The default label for keys not found while parsing |
boolean |
isLoggingDisabled
Flag to disable logging. |
static org.apache.log4j.Logger |
log
logging support |
Constructor Summary | |
---|---|
ERXSimpleTemplateParser()
Returns a parser object with the default undefined label |
|
ERXSimpleTemplateParser(java.lang.String undefinedKeyLabel)
Returns a parser object with the given string as the undefined key label |
|
ERXSimpleTemplateParser(java.lang.String undefinedKeyLabel,
boolean useOldDelimiter)
Returns a parser object with the given string as the undefined key label. |
Method Summary | |
---|---|
protected java.lang.Object |
doGetValue(java.lang.String aKeyPath,
java.lang.Object anObject)
|
com.webobjects.foundation.NSArray |
keysInTemplate(java.lang.String template,
java.lang.String delimiter)
Calculates the set of keys used in a given template for a given delimiter. |
static java.lang.String |
parseTemplatedStringWithObject(java.lang.String templateString,
java.lang.Object templateObject)
Parses the given templateString with an ERXSimpleTemplateParser. |
java.lang.String |
parseTemplateWithObject(java.lang.String template,
java.lang.String delimiter,
java.lang.Object object)
Cover method for calling the four argument method passing in null for the otherObject
parameter. |
java.lang.String |
parseTemplateWithObject(java.lang.String template,
java.lang.String delimiter,
java.lang.Object object,
java.lang.Object otherObject)
This method replaces the keys enclosed between the delimeter with the values found in object and otherObject. |
static void |
setSharedInstance(ERXSimpleTemplateParser newSharedInstance)
Sets the shared instance of the template parser. |
static ERXSimpleTemplateParser |
sharedInstance()
Convience method to return the shared instance of the template parser. |
protected boolean |
useOldDelimiter()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String DEFAULT_UNDEFINED_KEY_LABEL
public static final java.lang.String DEFAULT_DELIMITER
public static final org.apache.log4j.Logger log
public boolean isLoggingDisabled
ERXPatternLayout
will set
this to true for its internal parser object in order to
prevent an infinite debug logging loop.
Constructor Detail |
---|
public ERXSimpleTemplateParser()
DEFAULT_UNDEFINED_KEY_LABEL
public ERXSimpleTemplateParser(java.lang.String undefinedKeyLabel)
undefinedKeyLabel
- string as the undefined key label,
for example, "?", "N/A"public ERXSimpleTemplateParser(java.lang.String undefinedKeyLabel, boolean useOldDelimiter)
undefinedKeyLabel
- string as the undefined key label,
for example, "?", "N/A"useOldDelimiter
- boolean defining if @ is used as delimiter if @@ is not available in the templateMethod Detail |
---|
public static ERXSimpleTemplateParser sharedInstance()
setSharedInstance(er.extensions.foundation.ERXSimpleTemplateParser)
public static void setSharedInstance(ERXSimpleTemplateParser newSharedInstance)
newSharedInstance
- the parser object that will be sharedsharedInstance()
protected boolean useOldDelimiter()
public com.webobjects.foundation.NSArray keysInTemplate(java.lang.String template, java.lang.String delimiter)
template
- to check for keysdelimiter
- for finding keys
public java.lang.String parseTemplateWithObject(java.lang.String template, java.lang.String delimiter, java.lang.Object object)
null
for the otherObject
parameter. See that method for documentation.
template
- to use to parsedelimiter
- to use to find keysobject
- to resolve keyspublic java.lang.String parseTemplateWithObject(java.lang.String template, java.lang.String delimiter, java.lang.Object object, java.lang.Object otherObject)
When the value is not found in both object and otherObject,
it will replace the key with the undefined key label which
defaults to "?". You can set the label via the constructor
ERXSimpleTemplateParser(String)
. Note that a null
result will also output the label, so you might want to have the empty
string as the undefined key label.
template
- to use to parsedelimiter
- to use to check for keysobject
- to resolve keys off ofotherObject
- object used to resolve default keys
protected java.lang.Object doGetValue(java.lang.String aKeyPath, java.lang.Object anObject)
public static java.lang.String parseTemplatedStringWithObject(java.lang.String templateString, java.lang.Object templateObject)
templateString
- the template string to parsetemplateObject
- the object to bind to
|
Last updated: Tue, Feb 21, 2017 05:45 PM CET | |||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |