org.makumba.forms.tags
Class AddTag

java.lang.Object
  extended by javax.servlet.jsp.tagext.TagSupport
      extended by org.makumba.analyser.AnalysableElement
          extended by org.makumba.analyser.AnalysableTag
              extended by org.makumba.commons.tags.GenericMakumbaTag
                  extended by org.makumba.forms.tags.FormTagBase
                      extended by org.makumba.forms.tags.AddTag
All Implemented Interfaces:
Serializable, BodyTag, IterationTag, JspTag, Tag

public class AddTag
extends FormTagBase

mak:addForm tag

Version:
$Id: AddTag.java 5153 2010-05-18 21:37:50Z rosso_nero $
Author:
Cristian Bogdan
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.makumba.analyser.AnalysableElement
AnalysableElement.FilePositionElementComparator
 
Field Summary
 
Fields inherited from class org.makumba.forms.tags.FormTagBase
__MAKUMBA__FORM__COUNTER__, afterHandler, annotation, annotationSeparator, baseObject, basePointer, bodyContent, ddp, fdp, field, formAction, formMessage, formMethod, formName, handler, lazyEvaluatedInputs, multipleSubmitErrorMsg, operation, reloadFormOnError, responder, starttime, styleId, triggerEvent, type
 
Fields inherited from class org.makumba.commons.tags.GenericMakumbaTag
extraFormatting, extraFormattingParams, NEEDED_RESOURCES, params
 
Fields inherited from class org.makumba.analyser.AnalysableTag
ATTRIBUTE_VALUES_TRUE_FALSE, tagData, tagKey, TYPES
 
Fields inherited from class org.makumba.analyser.AnalysableElement
ANALYSIS_STATE
 
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
id, pageContext
 
Fields inherited from interface javax.servlet.jsp.tagext.BodyTag
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
 
Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
 
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
 
Constructor Summary
AddTag()
           
 
Method Summary
 DataDefinition getDataTypeAtAnalysis(PageCache pageCache)
          Tries to figure out the type of the object to which we want to add some data
(package private)  String getOperation()
          Figures out the operation
 ResponderOperation getResponderOperation(String operation)
          Gives the operation associated with this form tag.
 void setTagKey(PageCache pageCache)
          Sets tagKey to uniquely identify this tag.
 boolean shouldComputeBasePointer()
          Indicates whether the base pointer should be computed or not
 
Methods inherited from class org.makumba.forms.tags.FormTagBase
allowEmptyBody, checkNoParent, doAnalyzedCleanup, doAnalyzedEndTag, doAnalyzedStartTag, doEndAnalyze, doInitBody, doStartAnalyze, findParentForm, findRootForm, getDefaultExpr, getFormIdentifier, getFormSuffixIdentifier, getNestedFormNames, getSubmitJavascriptCall, initialiseState, registerPossibleAttributeValues, setAction, setAfterHandler, setAnnotation, setAnnotationSeparator, setBodyContent, setClientSideValidation, setField, setHandler, setMessage, setMethod, setMultipart, setMultipleSubmitErrorMsg, setName, setObject, setOnReset, setOnSubmit, setOperation, setReloadFormOnError, setStyleId, setTarget, setTriggerEvent, setType
 
Methods inherited from class org.makumba.commons.tags.GenericMakumbaTag
doStartTag, getParams, isAttribute, setAddTitle, setCols, setDefault, setElementSeparator, setEllipsis, setEllipsisLength, setEmpty, setFormat, setHtml, setLabelSeparator, setLineSeparator, setLongLineLength, setMaxlength, setMaxLength, setOnClick, setOnDblClick, setOnKeyDown, setOnKeyPress, setOnKeyUp, setOnMouseDown, setOnMouseMove, setOnMouseOut, setOnMouseOver, setOnMouseUp, setRows, setSize, setStyle, setStyleClass, setTitle, setType, setUrlEncode, toString
 
Methods inherited from class org.makumba.analyser.AnalysableTag
addTagText, allowsIdenticalKey, canHaveBody, checkAttributeValues, doEndTag, getElementData, getPageContext, getPageTextInfo, getTagKey, getTagText, needPageCache, notEmpty, onlyInt, registerAttributeValues, setTagDataAtAnalysis
 
Methods inherited from class org.makumba.analyser.AnalysableElement
checkTagFound, discardJSPParsingData, getAnalyzedElementData, getCurrentBodyTagData, getElementAfter, getElementBefore, getPageCache, getPageCache, getRunningElementData, getTagByAttribute, getTagById, getThreadElementStack, initializeThread, keepAnalysisState, setAnalyzedElementData, setRunningElementData
 
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
doAfterBody, findAncestorWithClass, getId, getParent, getValue, getValues, release, removeValue, setId, setPageContext, setParent, setValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.servlet.jsp.tagext.IterationTag
doAfterBody
 
Methods inherited from interface javax.servlet.jsp.tagext.Tag
doEndTag, doStartTag, getParent, release, setPageContext, setParent
 

Constructor Detail

AddTag

public AddTag()
Method Detail

setTagKey

public void setTagKey(PageCache pageCache)
Sets tagKey to uniquely identify this tag. Called at analysis time before doStartAnalyze() and at runtime before doMakumbaStartTag()

Overrides:
setTagKey in class FormTagBase
Parameters:
pageCache - the page cache of the current page
See Also:
AnalysableTag.doAnalyzedStartTag(org.makumba.analyser.PageCache), AnalysableTag.doStartAnalyze(org.makumba.analyser.PageCache)

getDataTypeAtAnalysis

public DataDefinition getDataTypeAtAnalysis(PageCache pageCache)
Tries to figure out the type of the object to which we want to add some data

Overrides:
getDataTypeAtAnalysis in class FormTagBase
Parameters:
pageCache - the page cache of the current page
Returns:
A DataDefinition corresponding to the type of object to which we want to add something

getOperation

String getOperation()
Figures out the operation

Overrides:
getOperation in class FormTagBase
Returns:
'addNew' if we are inside of a newForm, 'add' otherwise

shouldComputeBasePointer

public boolean shouldComputeBasePointer()
Description copied from class: FormTagBase
Indicates whether the base pointer should be computed or not

Overrides:
shouldComputeBasePointer in class FormTagBase
Returns:
false if we are at runtime (i.e. the baseObject has been set by JSP), true if we are at analysis time

getResponderOperation

public ResponderOperation getResponderOperation(String operation)
Description copied from class: FormTagBase
Gives the operation associated with this form tag. Each tag should implement its own

Overrides:
getResponderOperation in class FormTagBase
Parameters:
operation - name of the operation
Returns:
a ResponderOperation object holding the operation information