Kawai Wiki

Compare Revisions

Ignore whitespace Rev 143 → Rev 146

/trunk/src/main/java/org/kawai/tag/kcode/Download.java
New file
0,0 → 1,35
package org.kawai.tag.kcode;
 
import java.util.Map;
 
import javax.servlet.http.HttpServletRequest;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
 
public class Download implements KCode {
@Override
public String getTag() {
return "download";
}
@Override
public boolean hasBody() {
return false;
}
@Override
public String process(PageContext pageContext, Map<String, String> attributes, String body) throws JspException {
if (body != null) throw new JspException("contextPath tag cannot have a body!");
String filename = attributes.get("file");
if (filename == null) throw new JspException("file attribute is mandatory!");
HttpServletRequest req = (HttpServletRequest) pageContext.getRequest();
String cp = req.getContextPath();
return "<a href=\"" + cp + "/uploads/archive/" + filename + "\">" + filename + "</a>";
}
}