KickJava   Java API By Example, From Geeks To Geeks.

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


1 /* ===============================================================================
2 *
3 * Part of the InfoGlue Content Management Platform (www.infoglue.org)
4 *
5 * ===============================================================================
6 *
7 * Copyright (C)
8 *
9 * This program is free software; you can redistribute it and/or modify it under
10 * the terms of the GNU General Public License version 2, as published by the
11 * Free Software Foundation. See the file LICENSE.html for more information.
12 *
13 * This program is distributed in the hope that it will be useful, but WITHOUT
14 * ANY WARRANTY, including the implied warranty of MERCHANTABILITY or FITNESS
15 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License along with
18 * this program; if not, write to the Free Software Foundation, Inc. / 59 Temple
19 * Place, Suite 330 / Boston, MA 02111-1307 / USA.
20 *
21 * ===============================================================================
22 */

23
24 package org.infoglue.deliver.taglib.content;
25
26 import javax.servlet.jsp.JspException JavaDoc;
27
28 import org.infoglue.cms.entities.content.ContentVO;
29 import org.infoglue.deliver.taglib.component.ComponentLogicTag;
30
31 /**
32  * Tag for org.infoglue.deliver.controllers.kernel.impl.simple.TemplateController.getContentAttribute(<String>, <Sring>, <boolean>);
33  */

34 public class ContentTag extends ComponentLogicTag
35 {
36     private static final long serialVersionUID = 3258135773294113587L;
37
38     private Integer JavaDoc siteNodeId;
39     private Integer JavaDoc contentId;
40     private String JavaDoc propertyName;
41     private boolean useInheritance = true;
42     
43     public ContentTag()
44     {
45         super();
46     }
47     
48     public int doEndTag() throws JspException JavaDoc
49     {
50         produceResult(getContent());
51         return EVAL_PAGE;
52     }
53
54     private ContentVO getContent() throws JspException JavaDoc
55     {
56         if(this.contentId != null)
57             return this.getController().getContent(this.contentId);
58         else if(this.propertyName != null)
59             if(this.siteNodeId != null)
60                 return this.getComponentLogic().getBoundContent(siteNodeId, propertyName, useInheritance);
61             else
62                 return this.getComponentLogic().getBoundContent(propertyName, useInheritance);
63         else if(this.getController().getContentId() != null && this.getController().getContentId().intValue() > -1)
64             return this.getController().getContent();
65         else
66             return null;
67     }
68     
69     public void setContentId(String JavaDoc contentId) throws JspException JavaDoc
70     {
71         this.contentId = evaluateInteger("content", "contentId", contentId);
72     }
73
74     public void setPropertyName(String JavaDoc propertyName) throws JspException JavaDoc
75     {
76         this.propertyName = evaluateString("content", "propertyName", propertyName);
77     }
78
79     public void setUseInheritance(boolean useInheritance)
80     {
81         this.useInheritance = useInheritance;
82     }
83     
84     public void setSiteNodeId(String JavaDoc siteNodeId) throws JspException JavaDoc
85     {
86         this.siteNodeId = evaluateInteger("content", "siteNodeId", siteNodeId);
87     }
88 }
Popular Tags