KickJava   Java API By Example, From Geeks To Geeks.

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


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.cms.entities.content.ContentVersionVO;
30 import org.infoglue.deliver.taglib.TemplateControllerTag;
31
32 /**
33  * Tag for org.infoglue.deliver.controllers.kernel.impl.simple.TemplateController.getContentAttribute(<String>, <Sring>, <boolean>);
34  */

35 public class ContentVersionTag extends TemplateControllerTag
36 {
37     private static final long serialVersionUID = 3258135773294113587L;
38
39     private ContentVO content;
40     private Integer JavaDoc languageId;
41     private boolean useLanguageFallback = true;
42     
43     public ContentVersionTag()
44     {
45         super();
46     }
47     
48     public int doStartTag() throws JspException JavaDoc
49     {
50         return EVAL_BODY_INCLUDE;
51     }
52     
53     public int doEndTag() throws JspException JavaDoc
54     {
55         produceResult(getContentVersion());
56         
57         languageId = null;
58         useLanguageFallback = true;
59
60         return EVAL_PAGE;
61     }
62
63     private ContentVersionVO getContentVersion() throws JspException JavaDoc
64     {
65         if(this.languageId == null)
66             this.languageId = getController().getLanguageId();
67         
68         return getController().getContentVersion(content.getContentId(), languageId, useLanguageFallback);
69     }
70     
71     public void setContent(String JavaDoc contentExp) throws JspException JavaDoc
72     {
73         this.content = (ContentVO)evaluate("contentVersion", "content", contentExp, ContentVO.class);
74     }
75     
76     public void setLanguageId(String JavaDoc languageId) throws JspException JavaDoc
77     {
78         this.languageId = evaluateInteger("contentVersion", "languageId", languageId);;
79     }
80     
81     public void setUseLanguageFallback(boolean useLanguageFallback)
82     {
83         this.useLanguageFallback = useLanguageFallback;
84     }
85 }
Popular Tags