|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IterationTag
The IterationTag interface extends Tag by defining one additional method that controls the reevaluation of its body.
A tag handler that implements IterationTag is treated as one that
implements Tag regarding the doStartTag() and doEndTag() methods.
IterationTag provides a new method: doAfterBody()
.
The doAfterBody() method is invoked after every body evaluation to control whether the body will be reevaluated or not. If doAfterBody() returns IterationTag.EVAL_BODY_AGAIN, then the body will be reevaluated. If doAfterBody() returns Tag.SKIP_BODY, then the body will be skipped and doEndTag() will be evaluated instead.
Field Summary | |
---|---|
static int |
EVAL_BODY_AGAIN
Request the reevaluation of some body. |
Fields inherited from interface org.apache.cocoon.taglib.Tag |
---|
EVAL_BODY, EVAL_PAGE, ROLE, SKIP_BODY |
Method Summary | |
---|---|
int |
doAfterBody()
Process body (re)evaluation. |
Methods inherited from interface org.apache.cocoon.taglib.Tag |
---|
doEndTag, doStartTag, getParent, setParent, setup |
Field Detail |
---|
static final int EVAL_BODY_AGAIN
Method Detail |
---|
int doAfterBody() throws SAXException
If doAfterBody returns EVAL_BODY_AGAIN, a new evaluation of the body will happen (followed by another invocation of doAfterBody). If doAfterBody returns SKIP_BODY no more body evaluations will occur and then doEndTag will be invoked.
The method re-invocations may be lead to different actions because there might have been some changes to shared state, or because of external computation.
SAXException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |