org.apache.struts.taglib.nested.logic

Class NestedIterateTag

Implemented Interfaces:
NestedNameSupport, NestedPropertySupport, NestedTagSupport

public class NestedIterateTag
extends IterateTag
implements NestedNameSupport

NestedIterateTag. Slightly more complex that the other extensions. This one has to yield a proper index property. Very taxing.

Version:
$Revision: 1.7 $ $Date: 2003/02/28 05:14:39 $

Author:
Arron Bates

Since:
Struts 1.1

Field Summary

private String
nesting
private String
originalName
private String
originalNesting
private String
originalNestingName
private String
originalProperty

Fields inherited from class org.apache.struts.taglib.logic.IterateTag

collection, id, indexId, iterator, length, lengthCount, lengthValue, messages, name, offset, offsetValue, property, scope, started, type

Method Summary

private String
deriveNestedProperty()
The only added property to the class.
int
doAfterBody()
This is only overriden as the include reference will need it's index updated.
int
doEndTag()
Complete the processing of the tag.
int
doStartTag()
Overriding method of the heart of the matter.
void
release()
Release the tag's resources and reset the values.

Methods inherited from class org.apache.struts.taglib.logic.IterateTag

doAfterBody, doEndTag, doStartTag, getCollection, getId, getIndex, getIndexId, getLength, getName, getOffset, getProperty, getScope, getType, release, setCollection, setId, setIndexId, setLength, setName, setOffset, setProperty, setScope, setType

Field Details

nesting

private String nesting


originalName

private String originalName


originalNesting

private String originalNesting


originalNestingName

private String originalNestingName


originalProperty

private String originalProperty

Method Details

deriveNestedProperty

private String deriveNestedProperty()
The only added property to the class. For use in proper nesting.

Returns:
String value of the property and the current index or mapping.


doAfterBody

public int doAfterBody()
            throws JspException
This is only overriden as the include reference will need it's index updated.
Overrides:
doAfterBody in interface IterateTag

Returns:
int JSP continuation directive.


doEndTag

public int doEndTag()
            throws JspException
Complete the processing of the tag. The nested tags here will restore all the original value for the tag itself and the nesting context.
Overrides:
doEndTag in interface IterateTag

Returns:
int to describe the next step for the JSP processor


doStartTag

public int doStartTag()
            throws JspException
Overriding method of the heart of the matter. Gets the relative property and leaves the rest up to the original tag implementation. Sweet.
Overrides:
doStartTag in interface IterateTag

Returns:
int JSP continuation directive. This is in the hands of the super class.


release

public void release()
Release the tag's resources and reset the values.
Overrides:
release in interface IterateTag


Copyright B) 2000-2005 - Apache Software Foundation