Author: rgielen
Date: Mon Feb 23 20:15:45 2009
New Revision: 747124

URL: http://svn.apache.org/viewvc?rev=747124&view=rev
Log:
WW-2881 - Generic ActionMapping.param
- applied patch by Mathias Bogaert

Modified:
    
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java
    
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java
    
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java
    
struts/struts2/trunk/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java
    
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapperTest.java
    
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java?rev=747124&r1=747123&r2=747124&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java
 Mon Feb 23 20:15:45 2009
@@ -38,7 +38,7 @@
     private String namespace;
     private String method;
     private String extension;
-    private Map params;
+    private Map<String, Object> params;
     private Result result;
 
     /**
@@ -63,7 +63,7 @@
      * @param method The method
      * @param params The extra parameters
      */
-    public ActionMapping(String name, String namespace, String method, Map 
params) {
+    public ActionMapping(String name, String namespace, String method, 
Map<String, Object> params) {
         this.name = name;
         this.namespace = namespace;
         this.method = method;
@@ -87,7 +87,7 @@
     /**
      * @return The extra parameters
      */
-    public Map getParams() {
+    public Map<String, Object> getParams() {
         return params;
     }
 
@@ -147,7 +147,7 @@
     /**
      * @param params The extra parameters for this mapping
      */
-    public void setParams(Map params) {
+    public void setParams(Map<String, Object> params) {
         this.params = params;
     }
     

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java?rev=747124&r1=747123&r2=747124&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java
 Mon Feb 23 20:15:45 2009
@@ -110,7 +110,6 @@
     * @see 
org.apache.struts2.dispatcher.mapper.ActionMapper#getMapping(javax.servlet.http.HttpServletRequest)
     */
     public ActionMapping getMapping(HttpServletRequest request, 
ConfigurationManager configManager) {
-
        if (!isSlashesInActionNames()) {
                throw new IllegalStateException("This action mapper requires 
the setting 'slashesInActionNames' to be set to 'true'");
        }
@@ -174,7 +173,7 @@
 
             if (idParameterName != null && id != null) {
                 if (mapping.getParams() == null) {
-                    mapping.setParams(new HashMap());
+                    mapping.setParams(new HashMap<String, Object>());
                 }
                 mapping.getParams().put(idParameterName, id);
             }
@@ -206,7 +205,7 @@
                     }
                     if (parameters.size() > 0) {
                         if (mapping.getParams() == null) {
-                            mapping.setParams(new HashMap());
+                            mapping.setParams(new HashMap<String, Object>());
                         }
                         mapping.getParams().putAll(parameters);
                     }
@@ -252,7 +251,4 @@
        public void setIdParameterName(String idParameterName) {
                this.idParameterName = idParameterName;
        }
-    
-    
-
 }

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java?rev=747124&r1=747123&r2=747124&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java
 Mon Feb 23 20:15:45 2009
@@ -78,7 +78,7 @@
         }
 
         String actionName = uri.substring(1, nextSlash);
-        HashMap<String,String> parameters = new HashMap<String,String>();
+        Map<String, Object> parameters = new HashMap<String, Object>();
         try {
             StringTokenizer st = new StringTokenizer(uri.substring(nextSlash), 
"/");
             boolean isNameTok = true;
@@ -121,9 +121,8 @@
      */
     public String getUriFromActionMapping(ActionMapping mapping) {
         String base = mapping.getNamespace() + mapping.getName();
-        for (Iterator iterator = mapping.getParams().entrySet().iterator(); 
iterator.hasNext();) {
-            Map.Entry entry = (Map.Entry) iterator.next();
-            String name = (String) entry.getKey();
+        for (Map.Entry<String, Object> entry : mapping.getParams().entrySet()) 
{
+            String name = entry.getKey();
             if (name.equals(mapping.getName() + "Id")) {
                 base = base + "/" + entry.getValue();
                 break;

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java?rev=747124&r1=747123&r2=747124&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java
 Mon Feb 23 20:15:45 2009
@@ -79,12 +79,12 @@
      *         an empty map.
      */
     @Override
-    protected Map retrieveParameters(ActionContext ac) {
+    protected Map<String, Object> retrieveParameters(ActionContext ac) {
         ActionMapping mapping = (ActionMapping) 
ac.get(ServletActionContext.ACTION_MAPPING);
         if (mapping != null) {
             return mapping.getParams();
         } else {
-            return Collections.EMPTY_MAP;
+            return Collections.emptyMap();
         }
     }
 

Modified: 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapperTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapperTest.java?rev=747124&r1=747123&r2=747124&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapperTest.java
 (original)
+++ 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapperTest.java
 Mon Feb 23 20:15:45 2009
@@ -22,7 +22,6 @@
 package org.apache.struts2.dispatcher.mapper;
 
 import org.apache.struts2.StrutsTestCase;
-import org.apache.struts2.StrutsConstants;
 import com.mockobjects.servlet.MockHttpServletRequest;
 import com.opensymphony.xwork2.config.ConfigurationManager;
 import com.opensymphony.xwork2.config.Configuration;

Modified: 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java?rev=747124&r1=747123&r2=747124&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java
 (original)
+++ 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java
 Mon Feb 23 20:15:45 2009
@@ -41,13 +41,13 @@
         ActionMapping am = new ActionMapping();
         am.setName("view");
         am.setNamespace("secure");
-        am.setParams(Collections.EMPTY_MAP);
+        am.setParams(Collections.<String, Object>emptyMap());
 
         assertEquals("secureview", mapper.getUriFromActionMapping(am));
     }
 
     public void testGetUriParam() {
-        Map param = new HashMap();
+        Map<String, Object> param = new HashMap<String, Object>();
         param.put("article", "123");
         ActionMapping am = new ActionMapping();
         am.setName("view");
@@ -58,7 +58,7 @@
     }
 
     public void testGetUriParamId() {
-        Map param = new HashMap();
+        Map<String, Object> param = new HashMap<String, Object>();
         param.put("article", "123");
         param.put("viewId", "456");
         ActionMapping am = new ActionMapping();


Reply via email to