Author: jochen
Date: Wed Jul 19 14:19:55 2006
New Revision: 423613

URL: http://svn.apache.org/viewvc?rev=423613&view=rev
Log:
A null parameter list is now treated as an empty object array.
PR: XMLRPC-96
Submitted-by: Jimisola Laursen, [EMAIL PROTECTED]

Modified:
    
webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java
    webservices/xmlrpc/trunk/src/changes/changes.xml
    
webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java
    
webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties

Modified: 
webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java
URL: 
http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java?rev=423613&r1=423612&r2=423613&view=diff
==============================================================================
--- 
webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java
 (original)
+++ 
webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java
 Wed Jul 19 14:19:55 2006
@@ -25,7 +25,8 @@
  * [EMAIL PROTECTED] org.apache.xmlrpc.XmlRpcRequest}.
  */
 public class XmlRpcClientRequestImpl implements XmlRpcRequest {
-       private final XmlRpcRequestConfig config;
+    private static final Object[] ZERO_PARAMS = new Object[0];
+    private final XmlRpcRequestConfig config;
        private final String methodName;
        private final Object[] params;
 
@@ -45,10 +46,7 @@
                if (methodName == null) {
                        throw new NullPointerException("The method name must 
not be null.");
                }
-               params = pParams;
-               if (params == null) {
-                       throw new NullPointerException("The parameter list must 
not be null.");
-               }
+               params = pParams == null ? ZERO_PARAMS : pParams;
        }
 
        /** Creates a new instance.

Modified: webservices/xmlrpc/trunk/src/changes/changes.xml
URL: 
http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/src/changes/changes.xml?rev=423613&r1=423612&r2=423613&view=diff
==============================================================================
--- webservices/xmlrpc/trunk/src/changes/changes.xml (original)
+++ webservices/xmlrpc/trunk/src/changes/changes.xml Wed Jul 19 14:19:55 2006
@@ -9,15 +9,19 @@
         Added a missing "synchronized" to the TimingOutCallback.
       </action>
       <action dev="jochen" type="fix" due-to="Chris Conrad"
-          due-to-email="[EMAIL PROTECTED]">
+          due-to-email="[EMAIL PROTECTED]" issue="XMLRPC-93">
         Fixed an invalid index, that caused the ReflectiveXmlRpcHandler to fail
         detecting a method.
       </action>
-      <action dev="jochen" type="enhancement">
+      <action dev="jochen" type="enhancement" issue="XMLRPC-93">
         Added documentation for accessing an SSL server.
       </action>
+      <action dev="jochen" type="enhancement" due-to="Jimisola Laursen"
+          due-to-email="[EMAIL PROTECTED]" issue="XMLRPC-96">
+           A null parameter list is now treated as an empty object array.
+      </action>
       <action dev="jochen" type="fix" due-to="Jimisola Laursen"
-          due-to-email="[EMAIL PROTECTED]">
+          due-to-email="[EMAIL PROTECTED]" issue="XMLRPC-97">
            The type long was missing in types.apt.      
       </action>
     </release>

Modified: 
webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java
URL: 
http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java?rev=423613&r1=423612&r2=423613&view=diff
==============================================================================
--- 
webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java
 (original)
+++ 
webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java
 Wed Jul 19 14:19:55 2006
@@ -52,6 +52,7 @@
          */
         Properties doubledPropertyValues(Properties pMap);
     }
+
     /**
      * Handler for [EMAIL PROTECTED] JiraTest#testXMLRPC89()}
      */ 
@@ -188,5 +189,34 @@
         XMLRPC89Handler handler = (XMLRPC89Handler) 
factory.newInstance(XMLRPC89Handler.class);
         Properties result = handler.doubledPropertyValues(values);
         verifyXMLRPC89Properties(result);
+    }
+
+    /** Handler for XMLRPC-96
+     */
+    public static class XMLRPC96Handler {
+        /** Returns the "Hello, world!" string.
+         */
+        public String getHelloWorld() {
+            return "Hello, world!";
+        }
+    }
+
+    /**
+     * Test case for <a href="http://issues.apache.org/jira/browse/XMLRPC-96";>
+     * XMLRPC-96</a>
+     */
+    public void testXMLRPC96() throws Exception {
+        for (int i = 0;  i < providers.length;  i++) {
+            testXMLRPC96(providers[i]);
+        }
+    }
+
+    private void testXMLRPC96(ClientProvider pProvider) throws Exception {
+        XmlRpcClient client = pProvider.getClient();
+        client.setConfig(getConfig(pProvider));
+        String s = (String) client.execute(XMLRPC96Handler.class.getName() + 
".getHelloWorld", new Object[0]);
+        assertEquals("Hello, world!", s);
+        s = (String) client.execute(XMLRPC96Handler.class.getName() + 
".getHelloWorld", (Object[]) null);
+        assertEquals("Hello, world!", s);
     }
 }

Modified: 
webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties
URL: 
http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties?rev=423613&r1=423612&r2=423613&view=diff
==============================================================================
--- 
webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties
 (original)
+++ 
webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties
 Wed Jul 19 14:19:55 2006
@@ -1 +1,2 @@
 
org.apache.xmlrpc.test.JiraTest$XMLRPC89Handler=org.apache.xmlrpc.test.JiraTest$XMLRPC89HandlerImpl
+org.apache.xmlrpc.test.JiraTest$XMLRPC96Handler=org.apache.xmlrpc.test.JiraTest$XMLRPC96Handler



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to