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

java.lang.Object
  extended by BodyTagSupport
      extended by org.apache.struts.taglib.logic.IterateTag
          extended by org.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.10 $ $Date: 2004/03/14 06:23:45 $

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 - if a JSP exception has occurred

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 - if a JSP exception has occurred

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-2006 - The Apache Software Foundation