|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface BuilderCall
This represents a call to a builder. One of these is created for each entry in the builder call list, and one is created whenever a builder calls another builder.
Nested Class Summary | |
---|---|
static class |
BuilderCall.AssistedMessage
|
Field Summary | |
---|---|
static java.lang.String |
RESERVEDINPUT_CATEGORY
Reserved builder input for category |
static java.lang.String |
RESERVEDINPUT_COMMENT
Reserved builder input for comment |
static java.lang.String |
RESERVEDINPUT_DEFAULTNAME
Reserved builder input name for default builder call name |
static java.lang.String |
RESERVEDINPUT_ENABLED
Reserved builder input for enabling/disabling builder call |
static java.lang.String |
RESERVEDINPUT_NAME
Reserved builder input name for builder call name |
static java.lang.String |
RESERVEDINPUT_PAGELOCATION
Reserved builder input name for page location |
static int |
SEVERITY_ERROR
Error-level message |
static int |
SEVERITY_WARNING
Warning-level message |
Method Summary | |
---|---|
void |
addMessage(int severity,
java.lang.String message)
Add error/warning. |
void |
addMessage(int severity,
java.lang.String message,
java.lang.String assistID)
Add error/warning. |
void |
clearCacheData(java.lang.String keyStartsWith)
Clear all the cached data for which the key starts with the string. |
void |
clearMessage(int severity)
Clears error or warning messages. |
java.lang.String |
getBuilderCallID()
Get the ID for this builder call. |
BuilderDef |
getBuilderDef()
Get the BuilderDef for this builder call. |
BuilderInputs |
getBuilderInputs()
Access builder inputs |
IXml |
getCacheData(java.lang.String key)
Retrieve some cached data to speed generation. |
java.lang.String |
getCategory()
Gets the Category builder input. |
java.lang.Object |
getClassInstance(java.lang.String builderDataEntryName)
This will get a class instance for a GenHandler. |
java.lang.String |
getComment()
Gets the Comment builder input. |
java.lang.Object |
getGenHandlerData()
This allows the GenHandler to save a single Object in the BuilderCall. |
java.lang.String |
getMessage(int severity)
Gets error or warning text. |
java.util.Collection |
getMessages(boolean assistedOnly)
Gets all messages or all messages for which an assistID was created. |
java.lang.String |
getReadableName()
Get a readable name (for display in Designer) for this BuilderCall. |
void |
setCacheData(java.lang.String key,
IXml cacheData)
Set some data to cache with builder to speed generation. |
void |
setGenHandlerData(java.lang.Object obj)
This allows the GenHandler to save a single Object in the BuilderCall. |
void |
setPropertyResolver(com.bowstreet.generation.PropertyResolver propertyResolver)
Sets the PropertyResolver on the BuilderCall. |
Field Detail |
---|
static final java.lang.String RESERVEDINPUT_CATEGORY
static final java.lang.String RESERVEDINPUT_COMMENT
static final java.lang.String RESERVEDINPUT_DEFAULTNAME
static final java.lang.String RESERVEDINPUT_ENABLED
static final java.lang.String RESERVEDINPUT_NAME
static final java.lang.String RESERVEDINPUT_PAGELOCATION
static final int SEVERITY_ERROR
static final int SEVERITY_WARNING
Method Detail |
---|
void addMessage(int severity, java.lang.String message)
severity
- Either SEVERITY_ERROR or SEVERITY_WARNING.message
- The error or warning text.Set an error message indicating that a name is already in use: builderCall.addMessage(BuilderCall.SEVERITY_ERROR, "Specified name is already in use for a Variable: " + name);
void addMessage(int severity, java.lang.String message, java.lang.String assistID)
severity
- Either SEVERITY_ERROR or SEVERITY_WARNING.message
- The error or warning text.assistID
- The id of some user assistance that can be displayed. Currently cheat sheet ID.Set an error message indicating that a name is already in use: builderCall.addMessage(BuilderCall.SEVERITY_ERROR, "DataSource not found.", "EnableDataSource.Cheatsheet");
void clearCacheData(java.lang.String keyStartsWith)
keyStartsWith
- All keys that start with this prefix will be removed -- this
should almost always be null when called from the Builder code.void clearMessage(int severity)
severity
- Either SEVERITY_ERROR or SEVERITY_WARNING.java.lang.String getBuilderCallID()
BuilderDef getBuilderDef()
This example gets some extra data defined in builder def file. // Assumes builder def file contains this entry under BuilderData: // <BuilderDataEntry name="TemplateFileName">/test/sample.xml</BuilderDataEntry> BuilderDef bdef = builderCall.getBuilderDef(); String filename = bdef.getBuilderDataString("TemplateFileName");
BuilderInputs getBuilderInputs()
Get a builder input from a BuilderCall: String source = builderCall.getBuilderInputs().getString("SourceData", null);
IXml getCacheData(java.lang.String key)
key
- String which identifies the data
java.lang.String getCategory()
java.lang.Object getClassInstance(java.lang.String builderDataEntryName)
builderDataEntryName
- The name of the BuilderDataEntry inside the
BuilderDef which contains the classname.
java.lang.String getComment()
java.lang.Object getGenHandlerData()
java.lang.String getMessage(int severity)
severity
- Either SEVERITY_ERROR or SEVERITY_WARNING.
java.util.Collection getMessages(boolean assistedOnly)
java.lang.String getReadableName()
void setCacheData(java.lang.String key, IXml cacheData)
key
- String which identifies the data -- should embed the strings which
caused you to create or use this particular data, so that you will not find it
if a profile has changed one of your inputs!!cacheData
- XML data that can be retrieved in later regens. if null, will
cause that cache key to be removed altogether.This shows caching of parsed XML data. // Get XML builder input for variable data and create XML variable String xmlInput = builderInputs.getString("XMLSourceData", null); Variable xmlVariable = webApp.addVariable("sourceData", Variable.TYPE_XML); IXml parsedData = getCacheData(xmlInput); if (parsedData == null) { if (genContext.isDesignTime()) builderCall.clearCacheData(null); try { parsedData = XmlUtil.parseXml(xmlInput); } catch (IOException e) { // should set error message here... } builderCall.setCacheData(xmlInput,parsedData); } xmlVariable.setValue(parsedData); // set value in variable
void setGenHandlerData(java.lang.Object obj)
obj
- The object that will be returned by the next call to getGenHandlerDatavoid setPropertyResolver(com.bowstreet.generation.PropertyResolver propertyResolver)
propertyResolver
- The PropertyResolver to set.
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |