/src/main/java/com/googlecode/struts2yuiplugin/components/ClosingYUIBean.java
http://struts2yuiplugin.googlecode.com/ · Java · 46 lines · 31 code · 11 blank · 4 comment · 0 complexity · 826b5bf4c678063b1d0cd3d9a03932aa MD5 · raw file
- package com.googlecode.struts2yuiplugin.components;
-
- import org.apache.struts2.views.annotations.StrutsTagAttribute;
- import org.apache.commons.logging.Log;
- import org.apache.commons.logging.LogFactory;
- import com.opensymphony.xwork2.util.ValueStack;
-
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import java.io.Writer;
-
- /**
- * A specialization of the YUI Bean that handles open and closing tag templates
- *
- */
- public abstract class ClosingYUIBean extends YUIBean {
-
- private static final Log LOG = LogFactory.getLog(ClosingYUIBean.class);
-
- public ClosingYUIBean(ValueStack stack, HttpServletRequest request, HttpServletResponse response) {
- super(stack, request, response);
- }
-
- private String openTemplate;
-
- public abstract String getDefaultOpenTemplate();
-
- @StrutsTagAttribute(description="Set template to use for opening the rendered html.")
- public void setOpenTemplate(String openTemplate) {
- this.openTemplate = openTemplate;
- }
-
- public boolean start(Writer writer) {
- boolean result = super.start(writer);
- try {
- evaluateParams();
-
- mergeTemplate(writer, buildTemplateName(openTemplate, getDefaultOpenTemplate()));
- } catch (Exception e) {
- LOG.error("Could not open template", e);
- e.printStackTrace();
- }
-
- return result;
- }
- }