KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jahia > deprecated > taglibs > field > file > IfDownloadableTag


1 package org.jahia.deprecated.taglibs.field.file;
2
3 import java.io.IOException JavaDoc;
4
5 import javax.servlet.ServletRequest JavaDoc;
6 import javax.servlet.jsp.JspWriter JavaDoc;
7 import javax.servlet.jsp.tagext.BodyContent JavaDoc;
8 import javax.servlet.jsp.tagext.BodyTagSupport JavaDoc;
9
10 import org.jahia.data.JahiaData;
11 import org.jahia.data.files.JahiaFileField;
12 import org.jahia.utils.JahiaConsole;
13
14
15
16 /**
17  * Class IfDownloadableTag : displays the tag body if the enclosing FileFieldTag
18  * can be downloaded
19  *
20  * @author Jerome Tamiotti
21  */

22 public class IfDownloadableTag extends BodyTagSupport JavaDoc {
23
24     public int doAfterBody() {
25
26         ServletRequest JavaDoc request = pageContext.getRequest();
27         BodyContent JavaDoc body = getBodyContent();
28         try {
29             JahiaData jData = (JahiaData) request.getAttribute("org.jahia.data.JahiaData");
30             // retrieves the enclosing file field
31
FileFieldTag fileTag = (FileFieldTag) findAncestorWithClass(this, FileFieldTag.class);
32             if (fileTag != null) {
33                 JahiaFileField fileField = fileTag.getFile();
34                 if (fileField != null){
35                     if (fileField.isDownloadable()) {
36                         JspWriter JavaDoc out = body.getEnclosingWriter();
37                         out.print(body.getString());
38                     }
39                 }
40             }
41         } catch (IOException JavaDoc ioe) {
42             JahiaConsole.println("IfDownloadableTag: doAfterBody ", ioe.toString());
43         }
44         return SKIP_BODY;
45     }
46 }
47
Popular Tags