KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > infoglue > deliver > taglib > content > RelatedContentsTag


1 package org.infoglue.deliver.taglib.content;
2
3 import java.util.List JavaDoc;
4
5 import javax.servlet.jsp.JspException JavaDoc;
6
7 import org.infoglue.deliver.taglib.TemplateControllerTag;
8
9 public class RelatedContentsTag extends TemplateControllerTag {
10     /**
11      *
12      */

13     private static final long serialVersionUID = 3761686771326530105L;
14     
15     private Integer JavaDoc contentId;
16     private boolean onlyFirst;
17     private String JavaDoc attributeName;
18
19     public RelatedContentsTag()
20     {
21         super();
22     }
23
24     public int doEndTag() throws JspException JavaDoc
25     {
26         produceResult(getRelatedContents());
27         return EVAL_PAGE;
28     }
29
30     private Object JavaDoc getRelatedContents() throws JspException JavaDoc
31     {
32         final List JavaDoc related = getController().getRelatedContents(contentId, attributeName);
33         if(onlyFirst)
34             return related.isEmpty() ? null : related.get(0);
35         return related;
36     }
37
38     public void setContentId(String JavaDoc contentId) throws JspException JavaDoc
39     {
40         this.contentId = evaluateInteger("groupForContent", "contentId", contentId);
41     }
42
43     public void setOnlyFirst(boolean onlyFirst)
44     {
45         this.onlyFirst = onlyFirst;
46     }
47
48     public void setAttributeName(String JavaDoc attributeName)
49     {
50         this.attributeName = attributeName;
51     }
52 }
53
Popular Tags