You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by ms...@apache.org on 2015/01/27 09:01:54 UTC

[10/19] portals-pluto git commit: Removed old paths for propagating the PRPs to the URL

Removed old paths for propagating the PRPs to the URL


Project: http://git-wip-us.apache.org/repos/asf/portals-pluto/repo
Commit: http://git-wip-us.apache.org/repos/asf/portals-pluto/commit/6bf8a9dd
Tree: http://git-wip-us.apache.org/repos/asf/portals-pluto/tree/6bf8a9dd
Diff: http://git-wip-us.apache.org/repos/asf/portals-pluto/diff/6bf8a9dd

Branch: refs/heads/PortletHub
Commit: 6bf8a9dd4a32b5590c02692d9a9f07e0f380da08
Parents: bc96a13
Author: Scott Nicklous <ms...@apache.org>
Authored: Wed Jan 21 12:15:56 2015 +0100
Committer: Scott Nicklous <ms...@apache.org>
Committed: Wed Jan 21 12:15:56 2015 +0100

----------------------------------------------------------------------
 .../PortletStateAwareResponseContext.java       |  6 ++-
 .../pluto/container/PortletURLProvider.java     |  6 ++-
 .../pluto/container/impl/PortletURLImpl.java    | 16 +------
 .../container/impl/StateAwareResponseImpl.java  | 16 +------
 .../PortletStateAwareResponseContextImpl.java   | 14 ++++--
 .../container/PortletURLProviderImpl.java       | 50 ++++++++++++--------
 .../driver/url/impl/RelativePortalURLImpl.java  | 42 ----------------
 .../org/apache/pluto/driver/url/PortalURL.java  |  4 --
 8 files changed, 51 insertions(+), 103 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/6bf8a9dd/pluto-container-api/src/main/java/org/apache/pluto/container/PortletStateAwareResponseContext.java
----------------------------------------------------------------------
diff --git a/pluto-container-api/src/main/java/org/apache/pluto/container/PortletStateAwareResponseContext.java b/pluto-container-api/src/main/java/org/apache/pluto/container/PortletStateAwareResponseContext.java
index 29681b0..e68b53d 100644
--- a/pluto-container-api/src/main/java/org/apache/pluto/container/PortletStateAwareResponseContext.java
+++ b/pluto-container-api/src/main/java/org/apache/pluto/container/PortletStateAwareResponseContext.java
@@ -35,7 +35,6 @@ public interface PortletStateAwareResponseContext extends PortletResponseContext
     WindowState getWindowState();
     void setWindowState(WindowState windowState);
     Map<String, String[]> getRenderParameters();
-    Map<String, String[]> getPublicRenderParameters();
     EventProvider getEventProvider();
     List<Event> getEvents();
     
@@ -56,5 +55,10 @@ public interface PortletStateAwareResponseContext extends PortletResponseContext
      * @param identifier   Identifier for PRP
      */
     void removePublicRenderParameter(QName qn, String identifier);
+    
+    /**
+     * Clears public render parameters except those that are marked for removal.
+     */
+    void clearPublicRenderParameters();
 
 }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/6bf8a9dd/pluto-container-api/src/main/java/org/apache/pluto/container/PortletURLProvider.java
----------------------------------------------------------------------
diff --git a/pluto-container-api/src/main/java/org/apache/pluto/container/PortletURLProvider.java b/pluto-container-api/src/main/java/org/apache/pluto/container/PortletURLProvider.java
index 95c313a..17bfbad 100644
--- a/pluto-container-api/src/main/java/org/apache/pluto/container/PortletURLProvider.java
+++ b/pluto-container-api/src/main/java/org/apache/pluto/container/PortletURLProvider.java
@@ -61,7 +61,6 @@ public interface PortletURLProvider {
     boolean isSecure();
 
     Map<String, String[]> getRenderParameters();
-    Map<String, String[]> getPublicRenderParameters();
     
     /**
      * Add a public render parameter including QName to allow for use of
@@ -81,6 +80,11 @@ public interface PortletURLProvider {
      */
     void removePublicRenderParameter(QName qn, String identifier);
     
+    /**
+     * Clears public render parameters except those that are marked for removal.
+     */
+    void clearPublicRenderParameters();
+    
     String getCacheability();
     void setCacheability(String cacheLevel);
     

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/6bf8a9dd/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletURLImpl.java
----------------------------------------------------------------------
diff --git a/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletURLImpl.java b/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletURLImpl.java
index e289c6f..0312103 100644
--- a/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletURLImpl.java
+++ b/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletURLImpl.java
@@ -22,7 +22,6 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
@@ -279,8 +278,6 @@ public class PortletURLImpl implements PortletURL, ResourceURL {
         urlProvider.getRenderParameters().put(name, values);
         if (renderURL && isPublicRenderParameter(name))
         {
-            urlProvider.getPublicRenderParameters().put(name, values);
-            
             QName qn = getQNameForPRPName(name);
             urlProvider.addPublicRenderParameter(qn, name, values);
         }
@@ -298,8 +295,6 @@ public class PortletURLImpl implements PortletURL, ResourceURL {
         urlProvider.getRenderParameters().put(name, values);
         if (renderURL && isPublicRenderParameter(name))
         {
-            urlProvider.getPublicRenderParameters().put(name, values);
-            
             QName qn = getQNameForPRPName(name);
             urlProvider.addPublicRenderParameter(qn, name, values);
         }
@@ -342,13 +337,7 @@ public class PortletURLImpl implements PortletURL, ResourceURL {
         urlProvider.getRenderParameters().clear();
         if (renderURL)
         {
-            for (Iterator<Map.Entry<String,String[]>> iter = urlProvider.getPublicRenderParameters().entrySet().iterator(); iter.hasNext();)
-            {
-                if (iter.next().getValue() != null)
-                {
-                    iter.remove();
-                }
-            }
+            urlProvider.clearPublicRenderParameters();
         }
         for (Map.Entry<String,String[]> entry : parameters.entrySet())
         {
@@ -357,8 +346,6 @@ public class PortletURLImpl implements PortletURL, ResourceURL {
             urlProvider.getRenderParameters().put(key, values);
             if (renderURL && isPublicRenderParameter(key))
             {
-                urlProvider.getPublicRenderParameters().put(key, values);
-                
                 QName qn = getQNameForPRPName(key);
                 urlProvider.addPublicRenderParameter(qn, key, values);
             }
@@ -454,7 +441,6 @@ public class PortletURLImpl implements PortletURL, ResourceURL {
         ArgumentUtility.validateNotEmpty("name", name);
         if (isPublicRenderParameter(name))
         {
-            urlProvider.getPublicRenderParameters().put(name, null);
             urlProvider.getRenderParameters().remove(name);
             
             QName qn = getQNameForPRPName(name);

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/6bf8a9dd/pluto-container/src/main/java/org/apache/pluto/container/impl/StateAwareResponseImpl.java
----------------------------------------------------------------------
diff --git a/pluto-container/src/main/java/org/apache/pluto/container/impl/StateAwareResponseImpl.java b/pluto-container/src/main/java/org/apache/pluto/container/impl/StateAwareResponseImpl.java
index 432876c..bf7e885 100644
--- a/pluto-container/src/main/java/org/apache/pluto/container/impl/StateAwareResponseImpl.java
+++ b/pluto-container/src/main/java/org/apache/pluto/container/impl/StateAwareResponseImpl.java
@@ -19,7 +19,6 @@ package org.apache.pluto.container.impl;
 import java.io.Serializable;
 import java.util.Enumeration;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
@@ -160,7 +159,6 @@ public abstract class StateAwareResponseImpl extends PortletResponseImpl impleme
         checkSetStateChanged();
         if (isPublicRenderParameter(name))
         {
-            responseContext.getPublicRenderParameters().put(name, null);
             responseContext.getRenderParameters().remove(name);
             
             QName qn = getQNameForPRPName(name);
@@ -252,13 +250,7 @@ public abstract class StateAwareResponseImpl extends PortletResponseImpl impleme
         checkSetStateChanged();
         
         responseContext.getRenderParameters().clear();
-        for (Iterator<Map.Entry<String,String[]>> iter = responseContext.getPublicRenderParameters().entrySet().iterator(); iter.hasNext();)
-        {
-            if (iter.next().getValue() != null)
-            {
-                iter.remove();
-            }
-        }
+        responseContext.clearPublicRenderParameters();
         for (Map.Entry<String,String[]> entry : parameters.entrySet())
         {
             String[] values = cloneParameterValues(entry.getValue());
@@ -266,8 +258,6 @@ public abstract class StateAwareResponseImpl extends PortletResponseImpl impleme
             responseContext.getRenderParameters().put(key, values);
             if (isPublicRenderParameter(key))
             {
-                responseContext.getPublicRenderParameters().put(key, values);
-
                 QName qn = getQNameForPRPName(key);
                 responseContext.addPublicRenderParameter(qn, key, values);
             }
@@ -283,8 +273,6 @@ public abstract class StateAwareResponseImpl extends PortletResponseImpl impleme
         responseContext.getRenderParameters().put(key, values);
         if (isPublicRenderParameter(key))
         {
-            responseContext.getPublicRenderParameters().put(key, values);
-            
             QName qn = getQNameForPRPName(key);
             responseContext.addPublicRenderParameter(qn, key, values);
         }
@@ -303,8 +291,6 @@ public abstract class StateAwareResponseImpl extends PortletResponseImpl impleme
         responseContext.getRenderParameters().put(key, values);
         if (isPublicRenderParameter(key))
         {
-            responseContext.getPublicRenderParameters().put(key, values);
-
             QName qn = getQNameForPRPName(key);
             responseContext.addPublicRenderParameter(qn, key, values);
         }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/6bf8a9dd/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletStateAwareResponseContextImpl.java
----------------------------------------------------------------------
diff --git a/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletStateAwareResponseContextImpl.java b/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletStateAwareResponseContextImpl.java
index 1f2c826..d2077ba 100644
--- a/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletStateAwareResponseContextImpl.java
+++ b/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletStateAwareResponseContextImpl.java
@@ -40,6 +40,7 @@ import org.apache.pluto.container.driver.PlutoServices;
 import org.apache.pluto.container.impl.PortletURLImpl;
 import org.apache.pluto.driver.core.PortalRequestContext;
 import org.apache.pluto.driver.url.PortalURL;
+import org.apache.pluto.driver.url.PortalURLPublicParameter;
 
 /**
  * @version $Id$
@@ -103,11 +104,6 @@ public abstract class PortletStateAwareResponseContextImpl extends PortletRespon
         return isClosed() ? null : portletURLProvider.getPortletMode();
     }
 
-    public Map<String, String[]> getPublicRenderParameters()
-    {
-        return isClosed() ? null : portletURLProvider.getPublicRenderParameters();
-    }
-
     public Map<String, String[]> getRenderParameters()
     {
         return isClosed() ? null : portletURLProvider.getRenderParameters();
@@ -155,4 +151,12 @@ public abstract class PortletStateAwareResponseContextImpl extends PortletRespon
        LOGGER.debug("Remove PRP. QName = " + qn.toString());
        portletURLProvider.removePublicRenderParameter(qn, id);
     }
+
+    /**
+     * Clear public render parameters except those marked for removal 
+     */
+    public void clearPublicRenderParameters() {
+       portletURLProvider.clearPublicRenderParameters();
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/6bf8a9dd/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletURLProviderImpl.java
----------------------------------------------------------------------
diff --git a/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletURLProviderImpl.java b/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletURLProviderImpl.java
index c9538a5..fc5c564 100644
--- a/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletURLProviderImpl.java
+++ b/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletURLProviderImpl.java
@@ -55,10 +55,25 @@ public class PortletURLProviderImpl implements PortletURLProvider
     private String cacheLevel;
     private String resourceID;
     private Map<String, String[]> renderParameters;
-    private Map<String, String[]> publicRenderParameters;
     private Map<String, List<String>> properties;
     
     private final Set<PortalURLPublicParameter> prpSet = new HashSet<PortalURLPublicParameter>();
+    
+    /**
+     * Returns <code>true</code> if given parameter name is a public render parameter
+     * 
+     * @param name
+     */
+    private boolean isPRP(String name) {
+       boolean found = false;
+       for (PortalURLPublicParameter prp : prpSet) {
+          if (name.equals(prp.getName())) {
+             found = true;
+             break;
+          }
+       }
+       return found;
+    }
 
     public PortletURLProviderImpl(PortalURL url, TYPE type, PortletWindow portletWindow)
     {
@@ -110,21 +125,14 @@ public class PortletURLProviderImpl implements PortletURLProvider
         {
             for (Map.Entry<String,String[]> entry : renderParameters.entrySet())
             {
-                if (publicRenderParameters == null || !publicRenderParameters.containsKey(entry.getKey()))
+                if (!isPRP(entry.getKey()))
                 {
                     url.addParameter(new PortalURLParameter(window, entry.getKey(), entry.getValue()));
                 }
             }
         }
-        if (publicRenderParameters != null)
-        {
-            for (Map.Entry<String,String[]> entry : publicRenderParameters.entrySet())
-            {
-                url.getNewPublicParameters().put(entry.getKey(),entry.getValue() != null ? entry.getValue() : new String[]{null});
-            }
-            for (PortalURLPublicParameter prp : prpSet) {
-               url.addPublicRenderParameter(prp);
-            }
+        for (PortalURLPublicParameter prp : prpSet) {
+           url.addPublicRenderParameter(prp);
         }
         url.setResourceID(resourceID);
         url.setCacheability(cacheLevel);
@@ -174,15 +182,6 @@ public class PortletURLProviderImpl implements PortletURLProvider
         return renderParameters;
     }
     
-    public Map<String,String[]> getPublicRenderParameters()
-    {
-        if (publicRenderParameters == null)
-        {
-            publicRenderParameters = new HashMap<String,String[]>();
-        }
-        return publicRenderParameters;
-    }
-    
     public String getCacheability()
     {
         return cacheLevel;
@@ -257,4 +256,15 @@ public class PortletURLProviderImpl implements PortletURLProvider
        pupp.setRemoved(true);
        prpSet.add(pupp);
    }
+
+   /**
+    * Clear public render parameters except those marked for removal 
+    */
+   public void clearPublicRenderParameters() {
+      for (PortalURLPublicParameter prp : prpSet) {
+         if (!prp.isRemoved()) {
+            prpSet.remove(prp);
+         }
+      }
+   }
 }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/6bf8a9dd/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/RelativePortalURLImpl.java
----------------------------------------------------------------------
diff --git a/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/RelativePortalURLImpl.java b/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/RelativePortalURLImpl.java
index 6ff80f2..67d77e3 100644
--- a/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/RelativePortalURLImpl.java
+++ b/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/RelativePortalURLImpl.java
@@ -20,11 +20,9 @@ import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 import javax.portlet.PortletMode;
 import javax.portlet.WindowState;
@@ -59,14 +57,8 @@ public class RelativePortalURLImpl implements PortalURL {
    private String cacheLevel;
    private String resourceID;
 
-   private Map<String, String[]> publicParameterCurrent = new HashMap<String, String[]>();
-
-   private Map<String, String[]> publicParameterNew = new HashMap<String, String[]>();
    private Map<String, String[]> privateRenderParameters = new HashMap<String, String[]>();
 
-   // Newly made changes to the public render parameters
-//    private Set<PortalURLPublicParameter> newPrps = new HashSet<PortalURLPublicParameter>();
-
    // provides the defined public render parameters and their relationships to one another for the current page 
    private PublicRenderParameterMapper prpMapper = null;
 
@@ -288,26 +280,12 @@ public class RelativePortalURLImpl implements PortalURL {
       portalURL.actionWindow = actionWindow;
       portalURL.urlParser = urlParser;
       portalURL.resourceWindow = resourceWindow;
-      portalURL.publicParameterCurrent = publicParameterCurrent;
       portalURL.prpMapper = (prpMapper == null) ? null : prpMapper.clone();
       return portalURL;
    }
    //JSR-286 methods
 
-   public void addPublicRenderParametersNew(Map<String, String[]> parameters){
-      for (Iterator<String> iter=parameters.keySet().iterator(); iter.hasNext();) {
-         String key = iter.next();
-         if (publicParameterNew.containsKey(key)){
-            publicParameterNew.remove(key);
-         }
-         String[] values = parameters.get(key);
-         publicParameterNew.put(key, values);
-      }
-   }
-
-
    public void addPublicParameterCurrent(String name, String[] values){
-//       publicParameterCurrent.put(name, values);
       for (int ii = 0; ii < prpMapper.getNumberOfGroups(); ii++) {
          List<PortalURLPublicParameter> prps = prpMapper.getPublicParameterGroup(ii);
          if (prps.get(0).getName().equals(name)) {
@@ -318,21 +296,6 @@ public class RelativePortalURLImpl implements PortalURL {
 
    public Map<String, String[]> getPublicParameters() {
       Map<String,String[]> tmp = new HashMap<String, String[]>();
-
-//       for (Iterator<String> iter = publicParameterCurrent.keySet().iterator(); iter.hasNext();) {
-//          String paramname = iter.next();
-//          if (!publicParameterNew.containsKey(paramname)){
-//             String[] paramvalue = publicParameterCurrent.get(paramname);
-//             tmp.put(paramname, paramvalue);
-//          }
-//       }
-//       for (Iterator<String> iter = publicParameterNew.keySet().iterator();iter.hasNext();){
-//          String paramname = iter.next();
-//          String[] paramvalue = publicParameterNew.get(paramname);
-//          if (paramvalue[0]!=null){
-//             tmp.put(paramname, paramvalue);
-//          }
-//       }
       if (prpMapper != null) {
          for (int ind : prpMapper.getActiveIndexes()) {
             String name = prpMapper.getPublicParameterGroup(ind).get(0).getName();
@@ -343,11 +306,6 @@ public class RelativePortalURLImpl implements PortalURL {
       return tmp;
    }
 
-   public Map<String, String[]> getNewPublicParameters()
-   {
-      return publicParameterNew;
-   }
-
    public Map<String, String[]> getPrivateRenderParameters()
    {
       return privateRenderParameters;

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/6bf8a9dd/pluto-portal-driver/src/main/java/org/apache/pluto/driver/url/PortalURL.java
----------------------------------------------------------------------
diff --git a/pluto-portal-driver/src/main/java/org/apache/pluto/driver/url/PortalURL.java b/pluto-portal-driver/src/main/java/org/apache/pluto/driver/url/PortalURL.java
index 7ed34d3..367c36c 100644
--- a/pluto-portal-driver/src/main/java/org/apache/pluto/driver/url/PortalURL.java
+++ b/pluto-portal-driver/src/main/java/org/apache/pluto/driver/url/PortalURL.java
@@ -41,8 +41,6 @@ public interface PortalURL extends Cloneable {
 
     void addParameter(PortalURLParameter param);
     
-    void addPublicRenderParametersNew(Map<String, String[]> parameters);
-    
     /**
      * Adds a new public render parameter.
      * 
@@ -68,8 +66,6 @@ public interface PortalURL extends Cloneable {
 
     public Map<String, String[]> getPublicParameters();
     
-    Map<String, String[]> getNewPublicParameters();
-    
     Map<String, String[]> getPrivateRenderParameters();
     
     void setActionWindow(String actionWindow);