Author: apetrelli
Date: Mon Mar 9 22:39:50 2009
New Revision: 751886
URL: http://svn.apache.org/viewvc?rev=751886&view=rev
Log:
TILES-375
Added "getComposeStack" method.
Modified:
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletUtil.java
Modified:
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletUtil.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletUtil.java?rev=751886&r1=751885&r2=751886&view=diff
==============================================================================
---
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletUtil.java
(original)
+++
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletUtil.java
Mon Mar 9 22:39:50 2009
@@ -22,6 +22,7 @@
package org.apache.tiles.servlet.context;
import java.io.IOException;
+import java.util.Stack;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
@@ -45,6 +46,11 @@
public final class ServletUtil {
/**
+ * The name of the attribute that will contain the compose stack.
+ */
+ public static final String COMPOSE_STACK_ATTRIBUTE_NAME =
"org.apache.tiles.template.COMPOSE_STACK";
+
+ /**
* Name of the attribute used to store the force-include option.
* @since 2.0.6
*/
@@ -236,4 +242,23 @@
return retValue;
}
+
+ /**
+ * Returns the compose stack, that is used by the tags to compose
+ * definitions, attributes, etc.
+ *
+ * @param request The HTTP request.
+ * @return The compose stack.
+ * @since 2.2.0
+ */
+ @SuppressWarnings("unchecked")
+ public static Stack<Object> getComposeStack(HttpServletRequest request) {
+ Stack<Object> composeStack = (Stack<Object>) request.getAttribute(
+ COMPOSE_STACK_ATTRIBUTE_NAME);
+ if (composeStack == null) {
+ composeStack = new Stack<Object>();
+ request.setAttribute(COMPOSE_STACK_ATTRIBUTE_NAME, composeStack);
+ }
+ return composeStack;
+ }
}