You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tiles.apache.org by ap...@apache.org on 2009/11/10 21:05:34 UTC

svn commit: r834638 - in /tiles/sandbox/trunk/tiles3/tiles-freemarker/src: main/java/org/apache/tiles/freemarker/context/ test/java/org/apache/tiles/freemarker/context/

Author: apetrelli
Date: Tue Nov 10 20:05:33 2009
New Revision: 834638

URL: http://svn.apache.org/viewvc?rev=834638&view=rev
Log:
TILESSB-12
Preparing tiles-freemarker for the separation.

Added:
    tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtil.java   (with props)
    tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtilTest.java   (with props)
Modified:
    tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerTilesRequestContextFactory.java
    tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerUtil.java
    tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerUtilTest.java

Added: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtil.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtil.java?rev=834638&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtil.java (added)
+++ tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtil.java Tue Nov 10 20:05:33 2009
@@ -0,0 +1,32 @@
+package org.apache.tiles.freemarker.context;
+
+import org.apache.tiles.freemarker.FreeMarkerTilesException;
+
+import freemarker.core.Environment;
+import freemarker.ext.servlet.FreemarkerServlet;
+import freemarker.ext.servlet.HttpRequestHashModel;
+import freemarker.template.TemplateModelException;
+
+public final class FreeMarkerRequestUtil {
+
+	private FreeMarkerRequestUtil() {
+	}
+
+	/**
+	 * Returns the HTTP request hash model.
+	 *
+	 * @param env The current FreeMarker environment.
+	 * @return The request hash model.
+	 * @since 2.2.0
+	 */
+	public static HttpRequestHashModel getRequestHashModel(Environment env) {
+	    try {
+	        return (HttpRequestHashModel) env.getDataModel().get(
+	                FreemarkerServlet.KEY_REQUEST);
+	    } catch (TemplateModelException e) {
+	        throw new FreeMarkerTilesException(
+	                "Exception got when obtaining the request hash model", e);
+	    }
+	}
+
+}

Propchange: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtil.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtil.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerTilesRequestContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerTilesRequestContextFactory.java?rev=834638&r1=834637&r2=834638&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerTilesRequestContextFactory.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerTilesRequestContextFactory.java Tue Nov 10 20:05:33 2009
@@ -68,7 +68,7 @@
             Environment env = (Environment) requestItems[0];
             HttpRequestHashModel requestModel;
             try {
-                requestModel = FreeMarkerUtil.getRequestHashModel(env);
+                requestModel = FreeMarkerRequestUtil.getRequestHashModel(env);
             } catch (FreeMarkerTilesException e) {
                 log.warn("Cannot evaluate as a FreeMarker in Servlet Environment, skipping", e);
                 return null;

Modified: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerUtil.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerUtil.java?rev=834638&r1=834637&r2=834638&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerUtil.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/context/FreeMarkerUtil.java Tue Nov 10 20:05:33 2009
@@ -36,7 +36,6 @@
 
 import freemarker.core.Environment;
 import freemarker.ext.servlet.FreemarkerServlet;
-import freemarker.ext.servlet.HttpRequestHashModel;
 import freemarker.ext.servlet.ServletContextHashModel;
 import freemarker.template.TemplateDirectiveBody;
 import freemarker.template.TemplateException;
@@ -72,7 +71,7 @@
      */
     public static boolean isForceInclude(Environment env) {
         return org.apache.tiles.request.servlet.ServletUtil
-                .isForceInclude(getRequestHashModel(env).getRequest());
+                .isForceInclude(FreeMarkerRequestUtil.getRequestHashModel(env).getRequest());
     }
 
     /**
@@ -85,7 +84,7 @@
      */
     public static void setForceInclude(Environment env, boolean forceInclude) {
 		org.apache.tiles.request.servlet.ServletUtil.setForceInclude(
-				getRequestHashModel(env).getRequest(), forceInclude);
+				FreeMarkerRequestUtil.getRequestHashModel(env).getRequest(), forceInclude);
     }
 
     /**
@@ -115,7 +114,7 @@
     public static void setCurrentContainer(Environment env, String key) {
         TilesContainer container = getContainer(env, key);
         if (container != null) {
-            getRequestHashModel(env).getRequest().setAttribute(
+            FreeMarkerRequestUtil.getRequestHashModel(env).getRequest().setAttribute(
                     ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME, container);
         } else {
             throw new NoSuchContainerException("The container with the key '"
@@ -132,7 +131,7 @@
      */
     public static void setCurrentContainer(Environment env,
             TilesContainer container) {
-        ServletUtil.setCurrentContainer(getRequestHashModel(env).getRequest(),
+        ServletUtil.setCurrentContainer(FreeMarkerRequestUtil.getRequestHashModel(env).getRequest(),
                 getServletContextHashModel(env).getServlet()
                         .getServletContext(), container);
     }
@@ -145,29 +144,12 @@
      * @since 2.2.0
      */
     public static TilesContainer getCurrentContainer(Environment env) {
-        return ServletUtil.getCurrentContainer(getRequestHashModel(env)
+        return ServletUtil.getCurrentContainer(FreeMarkerRequestUtil.getRequestHashModel(env)
                 .getRequest(), getServletContextHashModel(env).getServlet()
                 .getServletContext());
     }
 
     /**
-     * Returns the HTTP request hash model.
-     *
-     * @param env The current FreeMarker environment.
-     * @return The request hash model.
-     * @since 2.2.0
-     */
-    public static HttpRequestHashModel getRequestHashModel(Environment env) {
-        try {
-            return (HttpRequestHashModel) env.getDataModel().get(
-                    FreemarkerServlet.KEY_REQUEST);
-        } catch (TemplateModelException e) {
-            throw new FreeMarkerTilesException(
-                    "Exception got when obtaining the request hash model", e);
-        }
-    }
-
-    /**
      * Returns the servlet context hash model.
      *
      * @param env The current FreeMarker environment.
@@ -257,9 +239,9 @@
                         "Error when wrapping an object", e);
             }
         } else if ("request".equals(scope)) {
-            getRequestHashModel(env).getRequest().setAttribute(name, obj);
+            FreeMarkerRequestUtil.getRequestHashModel(env).getRequest().setAttribute(name, obj);
         } else if ("session".equals(scope)) {
-            getRequestHashModel(env).getRequest().getSession().setAttribute(
+            FreeMarkerRequestUtil.getRequestHashModel(env).getRequest().getSession().setAttribute(
                     name, obj);
         } else if ("application".equals(scope)) {
             getServletContextHashModel(env).getServlet().getServletContext()
@@ -276,7 +258,7 @@
      */
     @SuppressWarnings("unchecked")
     public static ArrayStack<Object> getComposeStack(Environment env) {
-        HttpServletRequest request = getRequestHashModel(env).getRequest();
+        HttpServletRequest request = FreeMarkerRequestUtil.getRequestHashModel(env).getRequest();
         ArrayStack<Object> composeStack = (ArrayStack<Object>) request
                 .getAttribute(COMPOSE_STACK_ATTRIBUTE_NAME);
         if (composeStack == null) {

Added: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtilTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtilTest.java?rev=834638&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtilTest.java (added)
+++ tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtilTest.java Tue Nov 10 20:05:33 2009
@@ -0,0 +1,88 @@
+/**
+ *
+ */
+package org.apache.tiles.freemarker.context;
+
+import static org.easymock.EasyMock.*;
+import static org.easymock.classextension.EasyMock.*;
+import static org.junit.Assert.*;
+
+import java.io.StringWriter;
+import java.util.HashMap;
+import java.util.Locale;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import freemarker.core.Environment;
+import freemarker.ext.servlet.HttpRequestHashModel;
+import freemarker.template.ObjectWrapper;
+import freemarker.template.Template;
+import freemarker.template.TemplateHashModel;
+import freemarker.template.TemplateModelException;
+
+/**
+ * Tests {@link FreeMarkerRequestUtil}.
+ *
+ */
+public class FreeMarkerRequestUtilTest {
+
+    /**
+     * A string writer.
+     */
+    private StringWriter writer;
+
+    /**
+     * The FreeMarker environment.
+     */
+    private Environment env;
+
+    /**
+     * The locale object.
+     */
+    private Locale locale;
+
+    /**
+     * The template.
+     */
+    private Template template;
+
+    /**
+     * The template model.
+     */
+    private TemplateHashModel model;
+
+    /**
+     * @throws java.lang.Exception If something goes wrong.
+     */
+    @Before
+    public void setUp() throws Exception {
+        template = createMock(Template.class);
+        model = createMock(TemplateHashModel.class);
+        writer = new StringWriter();
+        expect(template.getMacros()).andReturn(new HashMap<Object, Object>());
+    }
+
+	/**
+	 * Test method for {@link org.apache.tiles.freemarker.context.FreeMarkerRequestUtil#getRequestHashModel(freemarker.core.Environment)}.
+	 * @throws TemplateModelException If something goes wrong.
+	 */
+	@Test
+	public void testGetRequestHashModel() throws TemplateModelException {
+        HttpServletRequest request = createMock(HttpServletRequest.class);
+        ObjectWrapper objectWrapper = createMock(ObjectWrapper.class);
+        HttpRequestHashModel requestModel = new HttpRequestHashModel(request, objectWrapper);
+
+        expect(model.get("Request")).andReturn(requestModel);
+
+        replay(template, model, request, objectWrapper);
+        env = new Environment(template, model, writer);
+        locale = Locale.ITALY;
+        env.setLocale(locale);
+        assertEquals(requestModel, FreeMarkerRequestUtil.getRequestHashModel(env));
+        verify(template, model, request, objectWrapper);
+	}
+
+}

Propchange: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtilTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerRequestUtilTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerUtilTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerUtilTest.java?rev=834638&r1=834637&r2=834638&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerUtilTest.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-freemarker/src/test/java/org/apache/tiles/freemarker/context/FreeMarkerUtilTest.java Tue Nov 10 20:05:33 2009
@@ -21,27 +21,10 @@
 
 package org.apache.tiles.freemarker.context;
 
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.COMPOSE_STACK_ATTRIBUTE_NAME;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.evaluateBody;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.getComposeStack;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.getContainer;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.getCurrentContainer;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.getRequestHashModel;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.getServletContextHashModel;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.isForceInclude;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.renderAsString;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.setAttribute;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.setCurrentContainer;
-import static org.apache.tiles.freemarker.context.FreeMarkerUtil.setForceInclude;
-import static org.easymock.EasyMock.eq;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.isA;
-import static org.easymock.classextension.EasyMock.createMock;
-import static org.easymock.classextension.EasyMock.replay;
-import static org.easymock.classextension.EasyMock.verify;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.apache.tiles.freemarker.context.FreeMarkerUtil.*;
+import static org.easymock.EasyMock.*;
+import static org.easymock.classextension.EasyMock.*;
+import static org.junit.Assert.*;
 
 import java.io.IOException;
 import java.io.StringWriter;
@@ -314,27 +297,6 @@
 
     /**
      * Test method for {@link org.apache.tiles.freemarker.context.FreeMarkerUtil
-     * #getRequestHashModel(freemarker.core.Environment)}.
-     * @throws TemplateModelException If something goes wrong.
-     */
-    @Test
-    public void testGetRequestHashModel() throws TemplateModelException {
-        HttpServletRequest request = createMock(HttpServletRequest.class);
-        ObjectWrapper objectWrapper = createMock(ObjectWrapper.class);
-        HttpRequestHashModel requestModel = new HttpRequestHashModel(request, objectWrapper);
-
-        expect(model.get("Request")).andReturn(requestModel);
-
-        replay(template, model, request, objectWrapper);
-        env = new Environment(template, model, writer);
-        locale = Locale.ITALY;
-        env.setLocale(locale);
-        assertEquals(requestModel, getRequestHashModel(env));
-        verify(template, model, request, objectWrapper);
-    }
-
-    /**
-     * Test method for {@link org.apache.tiles.freemarker.context.FreeMarkerUtil
      * #getServletContextHashModel(freemarker.core.Environment)}.
      * @throws TemplateModelException If something goes wrong.
      */