001 package railo.runtime; 002 003 import javax.servlet.http.HttpServlet; 004 import javax.servlet.http.HttpServletRequest; 005 import javax.servlet.http.HttpServletResponse; 006 import javax.servlet.jsp.JspFactory; 007 008 import railo.runtime.config.ConfigWeb; 009 import railo.runtime.query.QueryCache; 010 011 /** 012 * implements a JSP Factory, this class procduce JSP Compatible PageContext Object 013 * this object holds also the must interfaces to coldfusion specified functionlity 014 */ 015 public abstract class CFMLFactory extends JspFactory { 016 017 /** 018 * reset the PageContexes 019 */ 020 public abstract void resetPageContext(); 021 022 023 /** 024 * similar to getPageContext Method but return the concret implementation of the railo PageCOntext 025 * and take the HTTP Version of the Servlet Objects 026 * @param servlet 027 * @param req 028 * @param rsp 029 * @param errorPageURL 030 * @param needsSession 031 * @param bufferSize 032 * @param autoflush 033 * @return return the page<context 034 */ 035 public abstract PageContext getRailoPageContext( 036 HttpServlet servlet, 037 HttpServletRequest req, 038 HttpServletResponse rsp, 039 String errorPageURL, 040 boolean needsSession, 041 int bufferSize, 042 boolean autoflush); 043 044 /** 045 * Similar to the releasePageContext Method, but take railo PageContext as entry 046 * @param pc 047 */ 048 public abstract void releaseRailoPageContext(PageContext pc); 049 050 /** 051 * check timeout of all running threads, downgrade also priority from all thread run longer than 10 seconds 052 */ 053 public abstract void checkTimeout(); 054 055 /** 056 * @return returns the query cache 057 */ 058 public abstract QueryCache getDefaultQueryCache(); 059 060 /** 061 * @return returns count of pagecontext in use 062 */ 063 public abstract int getUsedPageContextLength(); 064 065 /** 066 * @return Returns the config. 067 */ 068 public abstract ConfigWeb getConfig(); 069 070 /** 071 * @return label of the factory 072 */ 073 public abstract Object getLabel(); 074 075 /** 076 * @deprecated no replacement 077 * @param label 078 */ 079 public abstract void setLabel(String label); 080 081 /** 082 * @return the servlet 083 */ 084 public abstract HttpServlet getServlet(); 085 086 087 }