package org.jblooming.waf.html.input;
import org.jblooming.ApplicationException;
import org.jblooming.PlatformRuntimeException;
import org.jblooming.utilities.JSP;
import org.jblooming.waf.html.core.JspIncluderSupport;
import javax.servlet.jsp.PageContext;
import java.io.IOException;
import java.util.Stack;
/**
* @author Pietro Polsinelli ppolsinelli@open-lab.com
* @author Roberto Bicchierai rbicchierai@open-lab.com
*/
public abstract class HtmlElement extends JspIncluderSupport {
public String id = "d" + hashCode() + "";
public String toolTip;
public boolean translateToolTip = false;
public boolean disabled = false;
public void toHtml(PageContext pageContext) {
Stack stack = getStack(pageContext.getRequest());
stack.push(this);
try {
StringBuffer out = toHtmlStringBuffer();
pageContext.getOut().write(out.toString());
} catch (IOException e) {
throw new PlatformRuntimeException(e);
} finally {
stack.pop();
}
}
public String getToolTip() {
return JSP.htmlEncodeApexes(JSP.w(toolTip));
}
public abstract StringBuffer toHtmlStringBuffer();
}