henning 2003/03/13 06:57:29
Modified: src/java/org/apache/turbine Turbine.java
src/java/org/apache/turbine/util RunDataFactory.java
src/java/org/apache/turbine/services/rundata
TurbineRunDataService.java
Log:
Remove RunDataFactory from Turbine Servlet, replace direct TemplateService
usage in Turbine by using a reference.
Deprecate the RunDataFactory. It sucks. :-)
Revision Changes Path
1.35 +25 -5 jakarta-turbine-2/src/java/org/apache/turbine/Turbine.java
Index: Turbine.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/Turbine.java,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- Turbine.java 9 Mar 2003 06:33:43 -0000 1.34
+++ Turbine.java 13 Mar 2003 14:57:15 -0000 1.35
@@ -91,14 +91,18 @@
import org.apache.turbine.services.component.ComponentService;
+import org.apache.turbine.services.template.TemplateService;
import org.apache.turbine.services.template.TurbineTemplate;
+import org.apache.turbine.services.rundata.RunDataService;
+import org.apache.turbine.services.rundata.TurbineRunDataFacade;
+
import org.apache.turbine.services.velocity.VelocityService;
import org.apache.turbine.util.RunData;
-import org.apache.turbine.util.RunDataFactory;
import org.apache.turbine.util.ServerData;
import org.apache.turbine.util.TurbineConfig;
+import org.apache.turbine.util.TurbineException;
import org.apache.turbine.util.security.AccessControlList;
@@ -198,6 +202,12 @@
/** Our internal configuration object */
private static Configuration configuration = null;
+ /** A reference to the Template Service */
+ private TemplateService templateService = null;
+
+ /** A reference to the RunData Service */
+ private RunDataService rundataService = null;
+
/** Logging class from commons.logging */
private static Log log = LogFactory.getLog(Turbine.class);
@@ -234,6 +244,15 @@
TurbineConfig.PROPERTIES_PATH_DEFAULT);
configure(config, context, trProps);
+
+ templateService = TurbineTemplate.getService();
+ rundataService = TurbineRunDataFacade.getService();
+
+ if (rundataService == null)
+ {
+ throw new TurbineException("No RunData Service configured!");
+ }
+
}
catch (Exception e)
{
@@ -633,7 +652,7 @@
// Get general RunData here...
// Perform turbine specific initialization below.
- data = RunDataFactory.getRunData(req, res, getServletConfig());
+ data = rundataService.getRunData(req, res, getServletConfig());
// If this is the first invocation, perform some
// initialization. Certain services need RunData to initialize
@@ -717,7 +736,8 @@
// than just the default page. If you do, add logic to
// DefaultPage to do what you want.
- String defaultPage = TurbineTemplate.getDefaultPageName(data);
+ String defaultPage = (templateService == null)
+ ? null :templateService.getDefaultPageName(data);
if (defaultPage == null)
{
@@ -816,7 +836,7 @@
finally
{
// Return the used RunData to the factory for recycling.
- RunDataFactory.putRunData(data);
+ rundataService.putRunData(data);
}
}
1.5 +11 -10
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.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- RunDataFactory.java 9 Mar 2003 02:54:11 -0000 1.4
+++ RunDataFactory.java 13 Mar 2003 14:57:15 -0000 1.5
@@ -74,6 +74,9 @@
* @author <a href="mailto:[EMAIL PROTECTED]">Kevin A. Burton</a>
* @author <a href="mailto:[EMAIL PROTECTED]">John D. McNally</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
+ * this factory.
*/
public class RunDataFactory
{
@@ -96,15 +99,13 @@
throws TurbineException,
IllegalArgumentException
{
- /*
- * NOTE: getRunData( HttpServletRequest req,
- * HttpServletResponse res ) has been deprecated 3-3-2000.
- * Wait a couple months (before Turbine 1.0) and remove this
- * method. Also don't allow null for req, res, or config as
- * these are now required by Turbine. Uncomment the below as
- * this should include the necessary functionality when we are
- * ready.
- */
+ // NOTE: getRunData( HttpServletRequest req,
+ // HttpServletResponse res ) has been deprecated 3-3-2000.
+ // Wait a couple months (before Turbine 1.0) and remove this
+ // method. Also don't allow null for req, res, or config as
+ // these are now required by Turbine. Uncomment the below as
+ // this should include the necessary functionality when we are
+ // ready.
if (req == null ||
res == null ||
config == null)
1.9 +2 -3
jakarta-turbine-2/src/java/org/apache/turbine/services/rundata/TurbineRunDataService.java
Index: TurbineRunDataService.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/rundata/TurbineRunDataService.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- TurbineRunDataService.java 13 Mar 2003 14:03:48 -0000 1.8
+++ TurbineRunDataService.java 13 Mar 2003 14:57:28 -0000 1.9
@@ -240,8 +240,7 @@
|| (res == null)
|| (config == null))
{
- throw new IllegalArgumentException(
- "RunDataFactory fatal error: HttpServletRequest, "
+ throw new IllegalArgumentException("HttpServletRequest, "
+ "HttpServletResponse or ServletConfig was null.");
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]