[jboss-svn-commits] JBL Code SVN: r9621 - in labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper: url and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Feb 19 17:46:55 EST 2007


Author: adamw
Date: 2007-02-19 17:46:55 -0500 (Mon, 19 Feb 2007)
New Revision: 9621

Modified:
   labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper/command/LabsPortalObjectCommandFactoryImpl.java
   labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper/url/LabsMainUrlFactory.java
Log:
Freezone window controls working

Modified: labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper/command/LabsPortalObjectCommandFactoryImpl.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper/command/LabsPortalObjectCommandFactoryImpl.java	2007-02-19 21:43:17 UTC (rev 9620)
+++ labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper/command/LabsPortalObjectCommandFactoryImpl.java	2007-02-19 22:46:55 UTC (rev 9621)
@@ -134,6 +134,10 @@
 
     private void sendRedirect(ServerInvocation invocation, String where) {
         try {
+            String queryString = invocation.getServerContext().getClientRequest().getQueryString();
+            if (queryString != null) {
+                where += "?" + queryString;
+            }
             invocation.getServerContext().getClientResponse().sendRedirect(where);
         } catch (IOException e) {
             // Oh well ...
@@ -185,7 +189,7 @@
             // null-marker.
             if (path == null) { path = ""; }
 
-            // Checking if this is not an action request.
+            // Checking if there is a meta parameter - if so, invoking portal actions.
             if (invocation.getServerContext().getQueryParameterMap().get(
                     PortletRequestDecoder.META_PARAMETER) != null) {
                 // If so, invoking default portal actions on a window action request,

Modified: labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper/url/LabsMainUrlFactory.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper/url/LabsMainUrlFactory.java	2007-02-19 21:43:17 UTC (rev 9620)
+++ labs/jbosslabs/trunk/portal-extensions/forge-mapper/src/java/org/jboss/labs/mapper/url/LabsMainUrlFactory.java	2007-02-19 22:46:55 UTC (rev 9621)
@@ -131,7 +131,22 @@
                             renderCmd.getMode(), renderCmd.getWindowState());
 
                     if (freezone) {
-                        url.getParameterMap().remove(PortletRequestDecoder.META_PARAMETER);
+                        // If the target object is the freezone window, and the
+                        // request isn't only a render request, but also, for
+                        // example, window state change, we leave the meta
+                        // parameter intact. Otherwise, we remove it from the
+                        // url.
+                        Object meta = url.getParameterMap().get(
+                                PortletRequestDecoder.META_PARAMETER);
+
+                        if (meta != null) {
+                            int metaInt = Integer.parseInt(((String []) meta)[0], 16);
+
+                            if ((metaInt | PortletRequestDecoder.RENDER_MASK) ==
+                                    PortletRequestDecoder.RENDER_MASK) {
+                                url.getParameterMap().remove(PortletRequestDecoder.META_PARAMETER);
+                            }
+                        }
                     }
                 }
 




More information about the jboss-svn-commits mailing list