xdoclet.modules.apache.struts

Class StrutsValidatorTagsHandler


public class StrutsValidatorTagsHandler
extends xdoclet.tagshandler.AbstractProgramElementTagsHandler

Struts Validator tag handler tags
Version:
$Revision: 1.12 $
Author:
Erik Hatcher (ehatcher@apache.org)
xdoclet.taghandler
namespace = "Validator"
created
August 23, 2002

Field Summary

protected Map
args
protected String
curFieldName
protected String
currentArgKey
protected static List
supportedTypes

Fields inherited from class xdoclet.tagshandler.AbstractProgramElementTagsHandler

currentToken, matchPattern, tagTokenizer

Fields inherited from class xdoclet.XDocletTagSupport

FOR_CLASS, FOR_CONSTRUCTOR, FOR_FIELD, FOR_METHOD, PARAMETER_DELIMITER

Method Summary

String
argIndex(Properties props)
Current argument index number (0 to 3).
String
argName(Properties props)
Current argument name - only valid if argument is for a specific validator type.
String
argValue(Properties props)
Current argument value, which is either an inline value or resource key.
String
fieldName(Properties props)
Returns the current field's name, local to the indexed property if there is one.
void
forAllFieldArgs(String template, Properties attributes)
Iterates over all arguments for the current field.
void
forAllFields(String template, Properties attributes)
Iterates the body for each field of the current form requiring validation.
void
forAllForms(String template, Properties attributes)
Iterates over all Struts Form beans and evaluates the body of the tag for each class.
String
formName(Properties attributes)
Gets the "name" attribute for the <form> element in the xml descriptor.
protected Map
getFields(XClass clazz)
protected Map
getFields(XClass clazz, String prefix)
void
ifArgIsForType(String template, Properties attributes)
Evaluates the body if the current argument is a validator-specific argument.
void
ifArgIsResource(String template, Properties attributes)
Evaluates body if current argument is a resource key.
void
ifArgIsValue(String template, Properties attributes)
Evaluates the body if the current argument is an inline value rather than a resource key.
void
ifFieldIsIndexed(String template, Properties attributes)
Evaluates the body if the current field has an indexed component.
void
ifFormHasFields(String template, Properties attributes)
Evaluates the body if form has fields requiring validation.
void
ifNoArg0(String template, Properties attributes)
Evaluates the body if there is no arg0 specified.
String
indexedListProperty(Properties props)
Returns the current field's indexedListProperty attribute, if any.
protected void
loadFieldArguments()
String
validatorList(Properties props)
Returns a comma-separated list of the specified validator types.

Methods inherited from class xdoclet.tagshandler.AbstractProgramElementTagsHandler

checkForWrap, currentToken, exceptionList, firstSentenceDescriptionOfCurrentMember, forAllMemberTagTokens, forAllMemberTags, forAllMembers, getAllClasses, getClassNameFor, getFullClassNameFor, getFullSuperclassNameFor, getIndentChars, getXExecutableMemberForMemberName, getXExecutableMemberForMemberName, hasExecutableMember, hasExecutableMember_OLD, makeCopyOfArray, matchValue, memberComment, setMatchValue, skipToken

Methods inherited from class xdoclet.XDocletTagSupport

delimit, expandClassName, generate, getCurrentClass, getCurrentClassTag, getCurrentConstructor, getCurrentField, getCurrentFieldTag, getCurrentMethod, getCurrentMethodTag, getCurrentPackage, getDocletContext, getEngine, getExpandedDelimitedTagValue, getTagValue, getTagValue, getTagValue, hasHavingClassTag, hasTag, isTagValueEqual, mandatoryParamNotFound, mandatoryTemplateTagParamNotFound, modifiers, popCurrentClass, pushCurrentClass, setCurrentClass, setCurrentClassTag, setCurrentConstructor, setCurrentField, setCurrentFieldTag, setCurrentMethod, setCurrentMethodTag, setCurrentPackage

Methods inherited from class xdoclet.template.TemplateTagHandler

getXJavaDoc, setXJavaDoc

Field Details

args

protected Map args

curFieldName

protected String curFieldName

currentArgKey

protected String currentArgKey

supportedTypes

protected static final List supportedTypes

Method Details

argIndex

public String argIndex(Properties props)
Current argument index number (0 to 3).
Parameters:
props - The content tag attributes.
Returns:
current argument index
doc.tag
type = "content"

argName

public String argName(Properties props)
Current argument name - only valid if argument is for a specific validator type.
Parameters:
props - The content tag attributes.
Returns:
current argument name
doc.tag
type = "content"

argValue

public String argValue(Properties props)
Current argument value, which is either an inline value or resource key.
Parameters:
props - The content tag attributes.
Returns:
current argument value
doc.tag
type = "content"

fieldName

public String fieldName(Properties props)
Returns the current field's name, local to the indexed property if there is one.
Parameters:
props - The content tag attributes.
Returns:
current field name
doc.tag
type = "content"

forAllFieldArgs

public void forAllFieldArgs(String template,
                            Properties attributes)
            throws xdoclet.XDocletException
Iterates over all arguments for the current field.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

forAllFields

public void forAllFields(String template,
                         Properties attributes)
            throws xdoclet.XDocletException
Iterates the body for each field of the current form requiring validation.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

forAllForms

public void forAllForms(String template,
                        Properties attributes)
            throws xdoclet.XDocletException
Iterates over all Struts Form beans and evaluates the body of the tag for each class.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

formName

public String formName(Properties attributes)
            throws xdoclet.XDocletException
Gets the "name" attribute for the <form> element in the xml descriptor. This should be the "path" form attribute if this is a ValidatorActiorForm or the "name" attribute otherwise.
Parameters:
attributes - The content tag attributes.
Returns:
form name
Throws:
xdoclet.XDocletException - if anything goes awry.
doc.tag
type = "content"

getFields

protected Map getFields(XClass clazz)
            throws xdoclet.XDocletException

getFields

protected Map getFields(XClass clazz,
                        String prefix)
            throws xdoclet.XDocletException

ifArgIsForType

public void ifArgIsForType(String template,
                           Properties attributes)
            throws xdoclet.XDocletException
Evaluates the body if the current argument is a validator-specific argument.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

ifArgIsResource

public void ifArgIsResource(String template,
                            Properties attributes)
            throws xdoclet.XDocletException
Evaluates body if current argument is a resource key.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

ifArgIsValue

public void ifArgIsValue(String template,
                         Properties attributes)
            throws xdoclet.XDocletException
Evaluates the body if the current argument is an inline value rather than a resource key.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

ifFieldIsIndexed

public void ifFieldIsIndexed(String template,
                             Properties attributes)
            throws xdoclet.XDocletException
Evaluates the body if the current field has an indexed component.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

ifFormHasFields

public void ifFormHasFields(String template,
                            Properties attributes)
            throws xdoclet.XDocletException
Evaluates the body if form has fields requiring validation.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

ifNoArg0

public void ifNoArg0(String template,
                     Properties attributes)
            throws xdoclet.XDocletException
Evaluates the body if there is no arg0 specified.
Parameters:
template - The body of the block tag
attributes - The attributes of the template tag
Throws:
xdoclet.XDocletException -
doc.tag
type = "block"

indexedListProperty

public String indexedListProperty(Properties props)
Returns the current field's indexedListProperty attribute, if any.
Parameters:
props - The content tag attributes.
Returns:
current field's indexedListProperty
doc.tag
type = "content"

loadFieldArguments

protected void loadFieldArguments()

validatorList

public String validatorList(Properties props)
Returns a comma-separated list of the specified validator types.
Parameters:
props - The content tag attributes.
Returns:
validator types list
doc.tag
type = "content"