Update of /var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib
In directory james.mmbase.org:/tmp/cvs-serv7795

Modified Files:
      Tag: MMBase-1_8
        FieldListTag.java StringListTag.java 
Log Message:
  MMB-1478


See also: 
http://cvs.mmbase.org/viewcvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib
See also: http://www.mmbase.org/jira/browse/MMB-1478


Index: FieldListTag.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/FieldListTag.java,v
retrieving revision 1.54.2.2
retrieving revision 1.54.2.3
diff -u -b -r1.54.2.2 -r1.54.2.3
--- FieldListTag.java   10 Apr 2008 15:54:26 -0000      1.54.2.2
+++ FieldListTag.java   10 Apr 2008 16:24:11 -0000      1.54.2.3
@@ -23,7 +23,7 @@
  * This class makes a tag which can list the fields of a NodeManager.
  *
  * @author Michiel Meeuwissen
- * @version $Id: FieldListTag.java,v 1.54.2.2 2008/04/10 15:54:26 michiel Exp $
+ * @version $Id: FieldListTag.java,v 1.54.2.3 2008/04/10 16:24:11 michiel Exp $
  */
 public class FieldListTag extends FieldReferrerTag implements ListProvider, 
FieldProvider, QueryContainerReferrer {
 
@@ -42,6 +42,7 @@
     protected Attribute  retain = Attribute.NULL;
     protected Attribute  remove = Attribute.NULL;
     private  Attribute comparator = Attribute.NULL;
+    private  Attribute varStatus = Attribute.NULL;
 
     public int size(){
         return returnList.size();
@@ -76,6 +77,10 @@
         container = getAttribute(c);
     }
 
+    public void setVarStatus(String s) throws JspTagException {
+        varStatus = getAttribute(s);
+    }
+
     public void setType(String t) throws JspTagException {
         type = getAttribute(t);
     }
@@ -186,6 +191,11 @@
     public int doStartTag() throws JspTagException{
         collector = new ContextCollector(getContextProvider());
 
+        if (varStatus != Attribute.NULL) {
+            org.mmbase.bridge.jsp.taglib.util.ContextContainer cc = 
this.getContextProvider().getContextContainer();
+            cc.register(varStatus.getString(this), new 
ListProviderLoopTagStatus(this));
+        }
+
         if (getReferid() != null) {
             if (nodeManagerAtt != Attribute.NULL || type != Attribute.NULL) {
                 throw new JspTagException("Cannot specify referid attribute 
together with nodetype/type attributes");
@@ -315,6 +325,9 @@
         if (getId() != null) {
             getContextProvider().getContextContainer().register(getId(), 
returnList, false);
         }
+        if (varStatus != Attribute.NULL) {
+            
getContextProvider().getContextContainer().unRegister(varStatus.getString(this));
+        }
         super.doEndTag();
         return EVAL_PAGE;
     }


Index: StringListTag.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/StringListTag.java,v
retrieving revision 1.32
retrieving revision 1.32.2.1
diff -u -b -r1.32 -r1.32.2.1
--- StringListTag.java  28 Jul 2006 11:31:22 -0000      1.32
+++ StringListTag.java  10 Apr 2008 16:24:11 -0000      1.32.2.1
@@ -22,7 +22,7 @@
  * This class makes a tag which can list strings.
  *
  * @author Michiel Meeuwissen
- * @version $Id: StringListTag.java,v 1.32 2006/07/28 11:31:22 michiel Exp $
+ * @version $Id: StringListTag.java,v 1.32.2.1 2008/04/10 16:24:11 michiel Exp 
$
  * @since MMBase-1.7
  */
 
@@ -37,6 +37,7 @@
     protected Attribute  add= Attribute.NULL;
     protected Attribute  retain = Attribute.NULL;
     protected Attribute  remove = Attribute.NULL;
+    protected Attribute  varStatus = Attribute.NULL;
 
     public int size(){
         return returnList.size();
@@ -85,6 +86,10 @@
         comparator = getAttribute(c);
     }
 
+    public void setVarStatus(String s) throws JspTagException {
+        varStatus = getAttribute(s);
+    }
+
     /**
      * Lists do implement ContextProvider
      */
@@ -125,6 +130,10 @@
 
         collector = new ContextCollector(getContextProvider());
 
+        if (varStatus != Attribute.NULL) {
+            org.mmbase.bridge.jsp.taglib.util.ContextContainer cc = 
this.getContextProvider().getContextContainer();
+            cc.register(varStatus.getString(this), new 
ListProviderLoopTagStatus(this));
+        }
 
         helper.overrideWrite(false); // default behavior is not to write to 
page
 
@@ -231,6 +240,10 @@
             collector.release(pageContext, 
getContextProvider().getContextContainer());
             collector  = null;
         }
+        if (varStatus != Attribute.NULL) {
+            
getContextProvider().getContextContainer().unRegister(varStatus.getString(this));
+        }
+
         bodyContent = null;
         helper.doEndTag();
         return  super.doEndTag();
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to