blob: 844699380bbed8ae05b9d2ecba9d201d9ab1e7e9 [file] [log] [blame]
package freemarker.ext.jsp;
import javax.servlet.Servlet;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.jsp.JspEngineInfo;
import javax.servlet.jsp.JspFactory;
import javax.servlet.jsp.PageContext;
/**
* @author Attila Szegedi
*/
abstract class FreeMarkerJspFactory extends JspFactory
{
protected abstract String getSpecificationVersion();
public JspEngineInfo getEngineInfo() {
return new JspEngineInfo() {
public String getSpecificationVersion() {
return FreeMarkerJspFactory.this.getSpecificationVersion();
}
};
}
public PageContext getPageContext(Servlet servlet, ServletRequest request,
ServletResponse response, String errorPageURL,
boolean needsSession, int bufferSize, boolean autoFlush) {
// This is never meant to be called. JSP pages compiled to Java
// bytecode use this API, but in FreeMarker, we're running templates,
// and not JSP pages precompiled to bytecode, therefore we have no use
// for this API.
throw new UnsupportedOperationException();
}
public void releasePageContext(PageContext ctx) {
// This is never meant to be called. JSP pages compiled to Java
// bytecode use this API, but in FreeMarker, we're running templates,
// and not JSP pages precompiled to bytecode, therefore we have no use
// for this API.
throw new UnsupportedOperationException();
}
}