org.apache.struts.taglib.nested.logic
Class NestedIterateTag

java.lang.Object
  extended byBodyTagSupport
      extended byorg.apache.struts.taglib.logic.IterateTag
          extended byorg.apache.struts.taglib.nested.logic.NestedIterateTag
All 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.

Since:
Struts 1.1
Version:
$Revision: 1.7 $ $Date: 2003/02/28 05:14:39 $
Author:
Arron Bates
See Also:
Serialized Form

Field Summary
private  java.lang.String nesting
           
private  java.lang.String originalName
           
private  java.lang.String originalNesting
           
private  java.lang.String originalNestingName
           
private  java.lang.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
 
Constructor Summary
NestedIterateTag()
           
 
Method Summary
private  java.lang.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
getCollection, getId, getIndex, getIndexId, getLength, getName, getOffset, getProperty, getScope, getType, setCollection, setId, setIndexId, setLength, setName, setOffset, setProperty, setScope, setType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.struts.taglib.nested.NestedNameSupport
getName, setName
 
Methods inherited from interface org.apache.struts.taglib.nested.NestedPropertySupport
getProperty, setProperty
 

Field Detail

nesting

private java.lang.String nesting

originalName

private java.lang.String originalName

originalProperty

private java.lang.String originalProperty

originalNesting

private java.lang.String originalNesting

originalNestingName

private java.lang.String originalNestingName
Constructor Detail

NestedIterateTag

public NestedIterateTag()
Method Detail

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 class IterateTag
Returns:
int JSP continuation directive. This is in the hands of the super class.
Throws:
JspException

deriveNestedProperty

private java.lang.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 class IterateTag
Returns:
int JSP continuation directive.
Throws:
JspException

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 class IterateTag
Returns:
int to describe the next step for the JSP processor
Throws:
JspException - for the bad things JSP's do

release

public void release()
Release the tag's resources and reset the values.

Overrides:
release in class IterateTag


Copyright ? 2000-2004 - Apache Software Foundation