KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > mmbase > bridge > jsp > taglib > tree > BranchTag


1 /*
2
3 This software is OSI Certified Open Source Software.
4 OSI Certified is a certification mark of the Open Source Initiative.
5
6 The license (Mozilla version 1.0) can be read at the MMBase site.
7 See http://www.MMBase.org/license
8
9 */

10 package org.mmbase.bridge.jsp.taglib.tree;
11
12 import javax.servlet.jsp.JspTagException JavaDoc;
13
14 import org.mmbase.bridge.*;
15 import org.mmbase.storage.search.*;
16 import org.mmbase.bridge.jsp.taglib.containers.*;
17 import org.mmbase.bridge.jsp.taglib.util.*;
18 import org.mmbase.bridge.jsp.taglib.*;
19 import org.mmbase.bridge.util.*;
20
21 /**
22  * Sub-tag of tree container. Is itself a Query container.
23  *
24  * @author Michiel Meeuwissen
25  * @since MMBase-1.8
26  * @version $Id: BranchTag.java,v 1.1 2006/03/14 17:57:13 michiel Exp $
27  * @todo EXPERIMENTAL
28  */

29 public class BranchTag extends ContextReferrerTag implements QueryContainerReferrer {
30
31     private Attribute container = Attribute.NULL;
32     private Attribute nodeManager = Attribute.NULL;
33     private Attribute role = Attribute.NULL;
34     private Attribute searchDir = Attribute.NULL;
35
36     public void setContainer(String JavaDoc c) throws JspTagException JavaDoc {
37         container = getAttribute(c);
38     }
39
40     public void setType(String JavaDoc n) throws JspTagException JavaDoc {
41         nodeManager = getAttribute(n);
42     }
43
44     public void setRole(String JavaDoc r) throws JspTagException JavaDoc {
45         role = getAttribute(r);
46     }
47     public void setSearchdir(String JavaDoc sd) throws JspTagException JavaDoc {
48         searchDir = getAttribute(sd);
49     }
50
51
52     public int doStartTag() throws JspTagException JavaDoc {
53         GrowingTreeList tree = ((TreeContainerTag) findParentTag(TreeContainerTag.class, (String JavaDoc) container.getValue(this), true)).getTree();
54         NodeManager nm = tree.getCloud().getNodeManager(nodeManager == Attribute.NULL ? "object" : nodeManager.getString(this));
55         tree.grow(nm, role.getString(this), searchDir.getString(this));
56         return EVAL_BODY;
57     }
58
59
60
61 }
62
Popular Tags