KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > killingar > forum > tags > GroupTag


1 /* Copyright 2000-2005 Anders Hovmöller
2  *
3  * The person or persons who have associated their work with
4  * this document (the "Dedicator") hereby dedicate the entire
5  * copyright in the work of authorship identified below (the
6  * "Work") to the public domain.
7  *
8  * Dedicator makes this dedication for the benefit of the
9  * public at large and to the detriment of Dedicator's heirs
10  * and successors. Dedicator intends this dedication to be an
11  * overt act of relinquishment in perpetuity of all present
12  * and future rights under copyright law, whether vested or
13  * contingent, in the Work. Dedicator understands that such
14  * relinquishment of all rights includes the relinquishment of
15  * all rights to enforce (by lawsuit or otherwise) those
16  * copyrights in the Work.
17  *
18  * Dedicator recognizes that, once placed in the public
19  * domain, the Work may be freely reproduced, distributed,
20  * transmitted, used, modified, built upon, or otherwise
21  * exploited by anyone for any purpose, commercial or non-
22  * commercial, and in any way, including by methods that have
23  * not yet been invented or conceived.
24  */

25
26 package net.killingar.forum.tags;
27
28 import net.killingar.forum.internal.Group;
29 import net.killingar.forum.internal.managers.ForumManager;
30 import net.killingar.forum.internal.managers.OptionsManager;
31
32 import javax.servlet.jsp.JspException JavaDoc;
33 import javax.servlet.jsp.JspTagException JavaDoc;
34
35 public class GroupTag extends webwork.view.taglib.WebWorkTagSupport
36 {
37     private String JavaDoc value = null;
38
39     public void setValue(String JavaDoc value) { this.value = value; }
40
41   public int doStartTag() throws JspException JavaDoc
42   {
43         try
44         {
45             ForumManager manager = (ForumManager)pageContext.getSession().getAttribute("manager");
46             OptionsManager options = (OptionsManager)manager.getManager(OptionsManager.class.getName());
47
48             Group group = null;
49
50             {
51                 Object JavaDoc o = getStack().findValue(value);
52
53                 if (o instanceof Group)
54                     group = (Group)o;
55                 else if (o instanceof String JavaDoc)
56                 {
57                     try
58                     {
59                         group = manager.getGroup(Long.parseLong((String JavaDoc)o));
60                     }
61                     catch (Exception JavaDoc e)
62                     {
63                         group = null;
64                     }
65                 }
66                 else if (o instanceof Long JavaDoc)
67                 {
68                     group = manager.getGroup(((Long JavaDoc)o).longValue());
69                 }
70                 else if (o instanceof Integer JavaDoc)
71                 {
72                     group = manager.getGroup(((Integer JavaDoc)o).intValue());
73                 }
74             }
75
76             if (group == null)
77             {
78                 pageContext.getOut().print("all");
79             }
80             else
81             {
82                 pageContext.getOut().print("<a HREF=\"/groups.jsp?view=");
83                 pageContext.getOut().print(group.getId());
84                 pageContext.getOut().print("\" target=\"_self\">");
85
86                 pageContext.getOut().print(group.getName());
87
88                 pageContext.getOut().print("</a>");
89             }
90         }
91         catch (Exception JavaDoc ex)
92         {
93             ex.printStackTrace(new java.io.PrintWriter JavaDoc(pageContext.getOut()));
94     }
95
96         return SKIP_BODY;
97   }
98
99   public int doEndTag() throws JspTagException JavaDoc
100   {
101         return EVAL_PAGE;
102   }
103 }
104
Popular Tags