You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tiles.apache.org by nl...@apache.org on 2012/07/11 20:07:01 UTC
svn commit: r1360333 - in /tiles/request/trunk: ./
tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/
tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/
tiles-request-jsp/src/main/java/o...
Author: nlebas
Date: Wed Jul 11 18:07:00 2012
New Revision: 1360333
URL: http://svn.apache.org/viewvc?rev=1360333&view=rev
Log:
update to autotag 1.1
Modified:
tiles/request/trunk/pom.xml
tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntime.java
tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtil.java
tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntimeTest.java
tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtilTest.java
tiles/request/trunk/tiles-request-jsp/src/main/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntime.java
tiles/request/trunk/tiles-request-jsp/src/test/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntimeTest.java
tiles/request/trunk/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntime.java
tiles/request/trunk/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntimeTest.java
Modified: tiles/request/trunk/pom.xml
URL: http://svn.apache.org/viewvc/tiles/request/trunk/pom.xml?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/pom.xml (original)
+++ tiles/request/trunk/pom.xml Wed Jul 11 18:07:00 2012
@@ -163,7 +163,7 @@ under the License.
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-autotag-core-runtime</artifactId>
- <version>1.0.0</version>
+ <version>1.1-SNAPSHOT</version>
<optional>true</optional>
</dependency>
<dependency>
Modified: tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntime.java
URL: http://svn.apache.org/viewvc/tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntime.java?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntime.java (original)
+++ tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntime.java Wed Jul 11 18:07:00 2012
@@ -36,7 +36,7 @@ import freemarker.template.TemplateModel
/**
* A Runtime for implementing a Freemarker Template Directive.
*/
-public class FreemarkerAutotagRuntime implements AutotagRuntime, TemplateDirectiveModel {
+public class FreemarkerAutotagRuntime implements AutotagRuntime<Request>, TemplateDirectiveModel {
private Environment env;
private TemplateDirectiveBody body;
@@ -65,7 +65,7 @@ public class FreemarkerAutotagRuntime im
/** {@inheritDoc} */
@Override
- public Object getParameter(String name, Object defaultValue) {
- return FreemarkerUtil.getAsObject((TemplateModel)params.get(name), defaultValue);
+ public <T> T getParameter(String name, Class<T> type, T defaultValue) {
+ return FreemarkerUtil.getAsObject((TemplateModel)params.get(name), type, defaultValue);
}
}
Modified: tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtil.java
URL: http://svn.apache.org/viewvc/tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtil.java?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtil.java (original)
+++ tiles/request/trunk/tiles-request-freemarker/src/main/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtil.java Wed Jul 11 18:07:00 2012
@@ -46,11 +46,12 @@ public final class FreemarkerUtil {
* model, or null if not specified.
* @return The unwrapped object.
*/
- public static Object getAsObject(TemplateModel model, Object defaultValue) {
+ public static <T> T getAsObject(TemplateModel model, Class<T> type, T defaultValue) {
try {
- Object retValue = defaultValue;
+ T retValue = defaultValue;
if (model != null) {
- Object value = DeepUnwrap.unwrap(model);
+ @SuppressWarnings("unchecked")
+ T value = (T) DeepUnwrap.unwrap(model);
if (value != null) {
retValue = value;
}
Modified: tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntimeTest.java
URL: http://svn.apache.org/viewvc/tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntimeTest.java?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntimeTest.java (original)
+++ tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerAutotagRuntimeTest.java Wed Jul 11 18:07:00 2012
@@ -147,10 +147,10 @@ public class FreemarkerAutotagRuntimeTes
replay(model, params, body);
FreemarkerAutotagRuntime runtime = new FreemarkerAutotagRuntime();
runtime.execute(env, params, new TemplateModel[0], body);
- Object notnullParam = runtime.getParameter("notnullParam", null);
- Object nullParam = runtime.getParameter("nullParam", null);
- Object notnullParamDefault = runtime.getParameter("notnullParam", new Integer(24));
- Object nullParamDefault = runtime.getParameter("nullParam", new Integer(24));
+ Object notnullParam = runtime.getParameter("notnullParam", Object.class, null);
+ Object nullParam = runtime.getParameter("nullParam", Object.class, null);
+ int notnullParamDefault = runtime.getParameter("notnullParam", Integer.class, new Integer(24));
+ int nullParamDefault = runtime.getParameter("nullParam", Integer.class, new Integer(24));
assertEquals(42, notnullParam);
assertEquals(null, nullParam);
assertEquals(42, notnullParamDefault);
Modified: tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtilTest.java
URL: http://svn.apache.org/viewvc/tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtilTest.java?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtilTest.java (original)
+++ tiles/request/trunk/tiles-request-freemarker/src/test/java/org/apache/tiles/request/freemarker/autotag/FreemarkerUtilTest.java Wed Jul 11 18:07:00 2012
@@ -62,7 +62,7 @@ public class FreemarkerUtilTest {
new Environment(template, rootDataModel, out);
replay(model);
- assertEquals(new Integer(42), FreemarkerUtil.getAsObject(model, new Integer(1)));
+ assertEquals(new Integer(42), FreemarkerUtil.getAsObject(model, Integer.class, new Integer(1)));
verify(template, rootDataModel, out, model);
}
@@ -81,7 +81,7 @@ public class FreemarkerUtilTest {
replay(template, rootDataModel, out);
new Environment(template, rootDataModel, out);
- assertEquals(new Integer(1), FreemarkerUtil.getAsObject(null, new Integer(1)));
+ assertEquals(new Integer(1), FreemarkerUtil.getAsObject(null, Integer.class, new Integer(1)));
verify(template, rootDataModel, out);
}
@@ -104,7 +104,7 @@ public class FreemarkerUtilTest {
replay(model);
try {
- assertEquals(new Integer(42), FreemarkerUtil.getAsObject(model, new Integer(1)));
+ assertEquals(new Integer(42), FreemarkerUtil.getAsObject(model, Integer.class, new Integer(1)));
} finally {
verify(template, rootDataModel, out, model);
}
Modified: tiles/request/trunk/tiles-request-jsp/src/main/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntime.java
URL: http://svn.apache.org/viewvc/tiles/request/trunk/tiles-request-jsp/src/main/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntime.java?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/tiles-request-jsp/src/main/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntime.java (original)
+++ tiles/request/trunk/tiles-request-jsp/src/main/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntime.java Wed Jul 11 18:07:00 2012
@@ -31,7 +31,7 @@ import org.apache.tiles.request.jsp.JspR
/**
* A Runtime for implementing JSP tag libraries.
*/
-public class JspAutotagRuntime extends SimpleTagSupport implements AutotagRuntime {
+public class JspAutotagRuntime extends SimpleTagSupport implements AutotagRuntime<Request> {
/** {@inheritDoc} */
@Override
public void doTag() {
@@ -55,7 +55,7 @@ public class JspAutotagRuntime extends S
/** {@inheritDoc} */
@Override
- public Object getParameter(String name, Object defaultValue) {
+ public <T> T getParameter(String name, Class<T> type, T defaultValue) {
throw new UnsupportedOperationException("the parameters are injected into the tag itself, no need to fetch them");
}
}
Modified: tiles/request/trunk/tiles-request-jsp/src/test/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntimeTest.java
URL: http://svn.apache.org/viewvc/tiles/request/trunk/tiles-request-jsp/src/test/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntimeTest.java?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/tiles-request-jsp/src/test/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntimeTest.java (original)
+++ tiles/request/trunk/tiles-request-jsp/src/test/java/org/apache/tiles/request/jsp/autotag/JspAutotagRuntimeTest.java Wed Jul 11 18:07:00 2012
@@ -94,7 +94,7 @@ public class JspAutotagRuntimeTest {
runtime.setJspContext(jspContext);
runtime.setParent(parent);
runtime.doTag();
- runtime.getParameter("test", null);
+ runtime.getParameter("test", Object.class, null);
verify(jspBody, jspContext, parent);
}
}
Modified: tiles/request/trunk/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntime.java
URL: http://svn.apache.org/viewvc/tiles/request/trunk/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntime.java?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntime.java (original)
+++ tiles/request/trunk/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntime.java Wed Jul 11 18:07:00 2012
@@ -40,7 +40,7 @@ import org.apache.velocity.tools.view.Vi
/**
* A Runtime for implementing Velocity Directives.
*/
-public class VelocityAutotagRuntime extends Directive implements AutotagRuntime {
+public class VelocityAutotagRuntime extends Directive implements AutotagRuntime<Request> {
private InternalContextAdapter context;
private Writer writer;
private Node node;
@@ -70,12 +70,12 @@ public class VelocityAutotagRuntime exte
/** {@inheritDoc} */
@Override
@SuppressWarnings("unchecked")
- public Object getParameter(String name, Object defaultValue) {
+ public <T> T getParameter(String name, Class<T> type, T defaultValue) {
if (params == null) {
ASTMap astMap = (ASTMap) node.jjtGetChild(0);
params = (Map<String, Object>) astMap.value(context);
}
- Object result = params.get(name);
+ T result = (T) params.get(name);
if (result == null) {
result = defaultValue;
}
Modified: tiles/request/trunk/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntimeTest.java
URL: http://svn.apache.org/viewvc/tiles/request/trunk/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntimeTest.java?rev=1360333&r1=1360332&r2=1360333&view=diff
==============================================================================
--- tiles/request/trunk/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntimeTest.java (original)
+++ tiles/request/trunk/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/autotag/VelocityAutotagRuntimeTest.java Wed Jul 11 18:07:00 2012
@@ -97,10 +97,10 @@ public class VelocityAutotagRuntimeTest
replay(context, writer, node, astMap, params);
VelocityAutotagRuntime runtime = new VelocityAutotagRuntime();
runtime.render(context, writer, node);
- Object notnullParam = runtime.getParameter("notnullParam", null);
- Object nullParam = runtime.getParameter("nullParam", null);
- Object notnullParamDefault = runtime.getParameter("notnullParam", new Integer(24));
- Object nullParamDefault = runtime.getParameter("nullParam", new Integer(24));
+ Object notnullParam = runtime.getParameter("notnullParam", Object.class, null);
+ Object nullParam = runtime.getParameter("nullParam", Object.class, null);
+ int notnullParamDefault = runtime.getParameter("notnullParam", Integer.class, new Integer(24));
+ int nullParamDefault = runtime.getParameter("nullParam", Integer.class, new Integer(24));
assertEquals(42, notnullParam);
assertEquals(null, nullParam);
assertEquals(42, notnullParamDefault);