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