001 package railo.loader.engine; 002 003 import java.io.IOException; 004 import java.net.URL; 005 006 import javax.servlet.ServletConfig; 007 import javax.servlet.ServletContext; 008 import javax.servlet.ServletException; 009 import javax.servlet.http.HttpServlet; 010 import javax.servlet.http.HttpServletRequest; 011 import javax.servlet.http.HttpServletResponse; 012 013 import railo.runtime.CFMLFactory; 014 import railo.runtime.PageContext; 015 import railo.runtime.util.Cast; 016 import railo.runtime.util.Creation; 017 import railo.runtime.util.Decision; 018 import railo.runtime.util.Excepton; 019 import railo.runtime.util.HTTPUtil; 020 import railo.runtime.util.Operation; 021 import railo.runtime.util.ResourceUtil; 022 import railo.runtime.util.ZipUtil; 023 import railo.runtime.video.VideoUtil; 024 025 /** 026 * wrapper for a CFMlEngine 027 */ 028 public class CFMLEngineWrapper implements CFMLEngine, EngineChangeListener { 029 030 private CFMLEngine engine; 031 032 /** 033 * constructor of the class 034 * @param engine 035 */ 036 public CFMLEngineWrapper(CFMLEngine engine) { 037 this.engine=engine; 038 } 039 040 /** 041 * @see railo.loader.engine.CFMLEngine#addServletConfig(javax.servlet.ServletConfig) 042 */ 043 public void addServletConfig(ServletConfig config) throws ServletException { 044 engine.addServletConfig(config); 045 } 046 047 /** 048 * @see railo.loader.engine.CFMLEngine#serviceCFML(javax.servlet.http.HttpServlet, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) 049 */ 050 public void serviceCFML(HttpServlet servlet, HttpServletRequest req, 051 HttpServletResponse rsp) throws ServletException, IOException { 052 engine.serviceCFML(servlet,req,rsp); 053 } 054 055 /** 056 * @see railo.loader.engine.CFMLEngine#serviceAMF(javax.servlet.http.HttpServlet, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) 057 */ 058 public void serviceAMF(HttpServlet servlet, HttpServletRequest req, 059 HttpServletResponse rsp) throws ServletException, IOException { 060 engine.serviceAMF(servlet,req,rsp); 061 } 062 063 public void serviceFile(HttpServlet servlet, HttpServletRequest req, 064 HttpServletResponse rsp) throws ServletException, IOException { 065 engine.serviceFile(servlet,req,rsp); 066 } 067 068 /** 069 * @see railo.loader.engine.CFMLEngine#getVersion() 070 */ 071 public String getVersion() { 072 return engine.getVersion(); 073 } 074 075 /** 076 * @see railo.loader.engine.CFMLEngine#getUpdateType() 077 */ 078 public String getUpdateType() { 079 return engine.getUpdateType(); 080 } 081 082 /** 083 * @see railo.loader.engine.CFMLEngine#getUpdateLocation() 084 */ 085 public URL getUpdateLocation() { 086 return engine.getUpdateLocation(); 087 } 088 089 /** 090 * @see railo.loader.engine.CFMLEngine#can(int, java.lang.String) 091 */ 092 public boolean can(int type, String password) { 093 return engine.can(type,password); 094 } 095 096 /** 097 * @see railo.loader.engine.CFMLEngine#getCFMLEngineFactory() 098 */ 099 public CFMLEngineFactory getCFMLEngineFactory() { 100 return engine.getCFMLEngineFactory(); 101 } 102 103 /** 104 * @see railo.loader.engine.CFMLEngine#reset() 105 */ 106 public void reset() { 107 engine.reset(); 108 } 109 110 /** 111 * @see railo.loader.engine.CFMLEngine#reset(String) 112 */ 113 public void reset(String configId) { 114 engine.reset(configId); 115 } 116 117 /** 118 * @see railo.loader.engine.EngineChangeListener#onUpdate(railo.loader.engine.CFMLEngine) 119 */ 120 public void onUpdate(CFMLEngine newEngine) { 121 this.engine=newEngine; 122 } 123 124 /** 125 * @see railo.loader.engine.CFMLEngine#getCastUtil() 126 */ 127 public Cast getCastUtil() { 128 return engine.getCastUtil(); 129 } 130 131 /** 132 * @see railo.loader.engine.CFMLEngine#getOperatonUtil() 133 */ 134 public Operation getOperatonUtil() { 135 return engine.getOperatonUtil(); 136 } 137 138 /** 139 * @see railo.loader.engine.CFMLEngine#getDecisionUtil() 140 */ 141 public Decision getDecisionUtil() { 142 return engine.getDecisionUtil(); 143 } 144 145 /** 146 * @see railo.loader.engine.CFMLEngine#getExceptionUtil() 147 */ 148 public Excepton getExceptionUtil() { 149 return engine.getExceptionUtil(); 150 } 151 152 /** 153 * @see railo.loader.engine.CFMLEngine#getCreationUtil() 154 */ 155 public Creation getCreationUtil() { 156 return engine.getCreationUtil(); 157 } 158 159 /** 160 * 161 * @see railo.loader.engine.CFMLEngine#getCFMLFactory(javax.servlet.ServletContext, javax.servlet.ServletConfig, javax.servlet.http.HttpServletRequest) 162 */ 163 public CFMLFactory getCFMLFactory(ServletContext srvContext, ServletConfig srvConfig, HttpServletRequest req) throws ServletException { 164 System.out.println(engine); 165 return engine.getCFMLFactory(srvContext, srvConfig, req); 166 } 167 168 /** 169 * @see railo.loader.engine.CFMLEngine#getBlazeDSUtil() 170 */ 171 public Object getBlazeDSUtil() { 172 return engine.getBlazeDSUtil(); 173 } 174 175 /** 176 * @see railo.loader.engine.CFMLEngine#getFDController() 177 */ 178 public Object getFDController() { 179 return engine.getFDController(); 180 } 181 182 /** 183 * @see railo.loader.engine.CFMLEngine#getHTTPUtil() 184 */ 185 public HTTPUtil getHTTPUtil() { 186 return engine.getHTTPUtil(); 187 } 188 189 /** 190 * @see railo.loader.engine.CFMLEngine#getResourceUtil() 191 */ 192 public ResourceUtil getResourceUtil() { 193 return engine.getResourceUtil(); 194 } 195 196 /** 197 * @see railo.loader.engine.CFMLEngine#getThreadPageContext() 198 */ 199 public PageContext getThreadPageContext() { 200 return engine.getThreadPageContext(); 201 } 202 203 /** 204 * @see railo.loader.engine.CFMLEngine#getVideoUtil() 205 */ 206 public VideoUtil getVideoUtil() { 207 return engine.getVideoUtil(); 208 } 209 210 /** 211 * @see railo.loader.engine.CFMLEngine#getZipUtil() 212 */ 213 public ZipUtil getZipUtil() { 214 return engine.getZipUtil(); 215 } 216 217 /** 218 * @see railo.loader.engine.CFMLEngine#getState() 219 */ 220 public String getState() { 221 return engine.getState(); 222 } 223 224 /** 225 * this interface is new to this class and not offically part of Railo 3.x, do not use outside the loader 226 * @param other 227 * @param checkReferenceEqualityOnly 228 * @return 229 */ 230 public boolean equalTo(CFMLEngine other, boolean checkReferenceEqualityOnly) { 231 while(other instanceof CFMLEngineWrapper) 232 other=((CFMLEngineWrapper)other).engine; 233 if(checkReferenceEqualityOnly) return engine==other; 234 return engine.equals(other); 235 } 236 }