You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by at...@apache.org on 2007/07/07 00:14:22 UTC

svn commit: r554075 - /portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/state/impl/AbstractNavigationalState.java

Author: ate
Date: Fri Jul  6 15:14:17 2007
New Revision: 554075

URL: http://svn.apache.org/viewvc?view=rev&rev=554075
Log:
Fixing action navstate cache lookup and key setup which need to take current (unmodified) PortletMode or WindowState into account.

Modified:
    portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/state/impl/AbstractNavigationalState.java

Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/state/impl/AbstractNavigationalState.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/state/impl/AbstractNavigationalState.java?view=diff&rev=554075&r1=554074&r2=554075
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/state/impl/AbstractNavigationalState.java (original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/state/impl/AbstractNavigationalState.java Fri Jul  6 15:14:17 2007
@@ -279,6 +279,8 @@
         String encodedState = null;
         Map currentWindowStates = null;
         PortletWindowExtendedNavigationalState windowNavState = null;
+        PortletMode targetMode = mode;
+        WindowState targetState = state;
         if (this instanceof SessionNavigationalState)
         {
             currentWindowStates = ((SessionNavigationalState)this).getCurrentPageWindowStates();
@@ -287,7 +289,15 @@
                 windowNavState = (PortletWindowExtendedNavigationalState)currentWindowStates.get(window.getId().toString());
                 if (windowNavState != null)
                 {
-                   encodedState = windowNavState.getDecoratorActionEncoding(mode, state);
+                    if (targetMode == null)
+                    {
+                        targetMode = windowNavState.getPortletMode();
+                    }
+                    if (targetState == null)
+                    {
+                        targetState = windowNavState.getWindowState();
+                    }
+                   encodedState = windowNavState.getDecoratorActionEncoding(targetMode, targetState);
                 }
             }
         }
@@ -301,7 +311,7 @@
                     windowNavState = new PortletWindowExtendedNavigationalState();
                     currentWindowStates.put(window.getId().toString(), windowNavState);
                 }
-                windowNavState.setDecoratorActionEncoding(mode, state, encodedState);
+                windowNavState.setDecoratorActionEncoding(targetMode, targetState, encodedState);
             }
         }
         return encodedState;



---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org