KickJava   Java API By Example, From Geeks To Geeks.

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


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 IfNotDownloadableTag : displays the tag body if the enclosing FileFieldTag
18  * can not be downloaded
19  *
20  * @author Jerome Tamiotti
21  */

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