henning 2003/03/19 08:10:56
Modified: src/java/org/apache/turbine/util RunDataFactory.java
Log:
Bring code on level with the RunDataService itself, remove reflection
for old servlet api
Revision Changes Path
1.6 +18 -35
jakarta-turbine-2/src/java/org/apache/turbine/util/RunDataFactory.java
Index: RunDataFactory.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/util/RunDataFactory.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- RunDataFactory.java 13 Mar 2003 14:57:15 -0000 1.5
+++ RunDataFactory.java 19 Mar 2003 16:10:56 -0000 1.6
@@ -58,11 +58,13 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import org.apache.turbine.services.TurbineServices;
-import org.apache.turbine.services.pool.PoolService;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import org.apache.turbine.services.pool.TurbinePool;
import org.apache.turbine.services.rundata.DefaultTurbineRunData;
-import org.apache.turbine.services.rundata.RunDataService;
import org.apache.turbine.services.rundata.TurbineRunData;
+import org.apache.turbine.services.rundata.TurbineRunDataFacade;
import org.apache.turbine.util.parser.DefaultCookieParser;
import org.apache.turbine.util.parser.DefaultParameterParser;
@@ -73,6 +75,7 @@
* @author <a href="mailto:[EMAIL PROTECTED]">Ilkka Priha</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Kevin A. Burton</a>
* @author <a href="mailto:[EMAIL PROTECTED]">John D. McNally</a>
+ * @author <a href="mailto:[EMAIL PROTECTED]">Henning P. Schmiedehausen</a>
* @version $Id$
* @deprecated This factory tries to be the RunData Service if no RunData Service is
* configured. RunData Service is now mandatory for Turbine so use it directly
without
@@ -80,6 +83,9 @@
*/
public class RunDataFactory
{
+ /** Logging */
+ private static Log log = LogFactory.getLog(RunDataFactory.class);
+
/**
* A flag for the RunData Service.
*/
@@ -97,7 +103,7 @@
HttpServletResponse res,
ServletConfig config)
throws TurbineException,
- IllegalArgumentException
+ IllegalArgumentException
{
// NOTE: getRunData( HttpServletRequest req,
// HttpServletResponse res ) has been deprecated 3-3-2000.
@@ -127,21 +133,18 @@
{
try
{
- RunDataService service = (RunDataService)
-
TurbineServices.getInstance().getService(RunDataService.SERVICE_NAME);
- return service.getRunData(req, res, config);
+ return TurbineRunDataFacade.getRunData(req, res, config);
}
catch (Exception x)
{
+ log.info("No Run Data Service available, not trying again!");
tryRunDataService = false;
}
}
// Failed, create a default implementation using the Pool Service.
- PoolService pool = (PoolService)
- TurbineServices.getInstance().getService(PoolService.SERVICE_NAME);
- TurbineRunData data = (TurbineRunData)
- pool.getInstance(DefaultTurbineRunData.class);
+ TurbineRunData data =
+ (TurbineRunData)
TurbinePool.getInstance(DefaultTurbineRunData.class);
// Cache some information that will be used elsewhere.
data.setRequest(req);
@@ -160,23 +163,7 @@
// data.setOut(data.getResponse().getWriter());
- // Allow Turbine to work with both 2.2 (and 2.1) and 2.0
- // Servlet API.
- String contextPath = null;
- Class jsdkClass = HttpServletRequest.class;
- try
- {
- java.lang.reflect.Method meth =
- jsdkClass.getDeclaredMethod("getContextPath", null);
- contextPath = (String) meth.invoke(req, null);
- }
- catch (Exception ex)
- {
- // Ignore a NoSuchMethodException because it means we are
- // using Servlet API 2.0. Make sure scriptName is not
- // null.
- contextPath = "";
- }
+ String contextPath = req.getContextPath();
String scriptName = contextPath + data.getRequest().getServletPath();
@@ -214,9 +201,7 @@
{
try
{
- RunDataService service = (RunDataService)
-
TurbineServices.getInstance().getService(RunDataService.SERVICE_NAME);
- service.putRunData(data);
+ TurbineRunDataFacade.putRunData(data);
return;
}
catch (Exception x)
@@ -225,8 +210,6 @@
}
// Failed, use the Pool Service instead.
- PoolService pool = (PoolService)
- TurbineServices.getInstance().getService(PoolService.SERVICE_NAME);
- pool.putInstance(data);
+ TurbinePool.putInstance(data);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]